- 博客(5)
- 问答 (1)
- 收藏
- 关注
原创 微信支付API_v3+Native扫码支付
这周做了个微信支付的需求,然后看了微信支付的开发文档可以说是一言难尽啊...也走了很多弯路踩了很多很多坑,在网上搜索感觉都很乱也没有一份具体的代码demo,今天为大家写一份从生成二维码到回调的实操代码,希望对大家有帮助回调这里我也写了很久,因为文档有很多步骤,但是又写的很乱导致很久家。但其实最后总结就三步,第一:拿定时更新的平台证书,拿出他的序列号跟回调请求头的序列号做对比,第二:拿这个证书的公钥去做验签,第三就是解密返回来的参数。
2023-09-09 11:13:32
931
2
原创 用策略+工厂+模板方法去消除业务中的冗余代码
但是我们看到代码的骨架还在,就是If,else,我们继续,这里需要用到工厂模式,先抽出一个工厂类,工厂类里面有一个map,key是string,value就是我们的策略类。再多写一个handler,注册抽象出来的策略。先定义一个抽象的模板方法类。
2023-08-12 17:17:10
164
1
原创 使用Redis缓存出现的问题与解决方法
2. 布隆过滤器:在数据写入数据库的同时将这个 ID 同步到到布隆过滤器中,当请求的 id 不存在布隆过滤器中则说明该请求查询的数据一定没有在数据库中保存,就不要去数据库查询了。击穿指的是缓存中没有,但是数据库有数据,由于种种原因缓存过期了,Redis 这层流量防护屏障被击穿了,很多并发请求直奔数据库导致数据库压力过大可能会压垮数据库把服务搞死。即相同业务数据写缓存时,在基础过期时间之上,再加一个随机的过期时间,让数据在未来一段时间内慢慢过期,避免瞬时全部过期,对数据库造成过大压力。
2023-08-06 22:34:10
220
原创 使用canal解决MySQL与Redis数据同步
市面上有很多解决MySQL和Redis数据同步的问题的,比如基于mq实现,还有先改库在删缓存,再有延迟双删等方案,今天学习一下canal实现数据同步。这个其实跟MySQL的主从复制原理有关, 简单介绍下主从复制的原理: 主要依靠MySQL的binlog实现,它记录的是所有的DDL,DML,TCL操作 当主库的数据发生改变时,会将改变记录保存到binlog 当库新开一个线程将binlog内容发送到从库,从库会发起一个IO线程请求主库的binlog 并保存
2023-08-05 14:55:34
552
2
空空如也
关于#redmine#的问题:redmine邮件配置不生效
2025-04-02
K8s多pod服务如何在全局拿到已连接的ip地址
2024-08-12
安装xtrabackup失败
2023-09-19
遇到了一个很奇怪的nginx问题
2023-06-26
TA创建的收藏夹 TA关注的收藏夹
TA关注的人