作者:Bruce.D
github:https://github.com/doukoi-BDB
今日主题:
1、redis 的缓存预热?缓存降级?
2、GitHub 仓库更新 weChat - openApi 管理,详情公告
3、GitHub 仓库更新 weChat - 微信支付 管理,详情公告
01
缓存预热、缓存降级
1、缓存预热是指系统上线后,提前将相关的缓存数据加载到缓存系统。避免在用户请求的时候,先查询数据库,然后再将数据缓存的问题,用户直接查询事先被预热的缓存数据。
如果不进行预热,那么Redis初始状态数据为空,系统上线初期,对于高并发的流量,都会访问到数据库中, 对数据库造成流量的压力。
缓存预热解决方案:
- 数据量不大的时候,工程启动的时候进行加载缓存动作;
- 数据量大的时候,设置一个定时任务脚本,进行缓存的刷新;
- 数据量太大的时候,优先保证热点数据进行提前加载到缓存。
2、缓存降级是指缓存失效或缓存服务器挂掉的情况下,不去访问数据库,直接返回默认数据或访问服务的内存数据。降级一般是有损的操作,所以尽量减少降级对于业务的影响程度。
在进行降级之前要对系统进行梳理,看看系统是不是可以丢卒保帅;从而梳理出哪些必须誓死保护,哪些可降级;比如可以参考日志级别设置预案:
一般:比如有些服务偶尔因为网络抖动或者服务正在上线而超时,可以自动降级;
警告:有些服务在一段时间内成功率有波动(如在95~100%之间),可以自动降级或人工降级,并发送告警;
错误:比如可用率低于90%,或者数据库连接池被打爆了,或者访问量突然猛增到系统能承受的最大阀值,此时可以根据情况自动降级或者人工降级;
严重错误:比如因为特殊原因数据错误了,此时需要紧急人工降级。
02
weChat - openApi
仓库地址:https://github.com/doukoi-BDB/Frame-SDK (走过路过来个 stars )
1、文件地址:/Lib/weChatService/
2、详细说明:
03
weChat - 微信支付
仓库地址:https://github.com/doukoi-BDB/Frame-SDK (走过路过来个 stars )
1、文件地址:Frame-SDK/Demo/weChat_pay_H5
2、详细说明:
特殊说明:
1、仓库还有其他demo、类库、函数,均免费使用
2、想要了解的其他功能点,留言&社群告知我即可