Senparc 官方微信开发教程《微信开发深度解析:公众号、小程序高效开发秘籍》已经出版,点击这里购买正版。
Senparc.Weixin 缓存队列原理
- 微信的AccessToken等数据都使用各类Container进行管理;
- 每个Container都有一个强制约束的ContainerBag,本地缓存信息;
- ContainerBag中的属性被修改时,会将需要对当前对象操作的过程放入消息队列(SenparcMessageQueue);
- 每个消息队列中的对象都带有一个委托类型属性,其动作通常是通过缓存策略(实现自IContainerCacheStrategy,可以是本地缓存或分布式缓存)更新缓存;
- 一个独立的线程会对消息队列进行读取,依次执行队列成员的委托,直到完成当前所有队列的缓存更新操作;
- 上一个步骤重复进行,每次执行完默认等待2秒。此方案可以有效避免同一个ContainerBag对象属性被连续更新的情况下,每次都和缓存服务通讯而产生消耗。
测试结果:
缓存测试运行中……
Senparc 官方微信开发教程:《微信开发深度解析:公众号、小程序高效开发秘籍》

为了将我们积累的经验更多、更系统地与开发者分享,由 Senparc.Weixin SDK 作者耗时 2 年,亲自整理编写的《微信开发深度解析:公众号、小程序高效开发秘籍》已经出版。
全书涵盖从微信的基础接口介绍、Senparc.Weixin SDK 的深入剖析,以及我们在研究过程中发现的许多微信开发“坑”,都一一向读者介绍,旨在将更多关于微信开发的精华以及架构思想分享给开发者。
感谢您对 Senparc 的支持!
如果这个项目对你有用,
我们欢迎各方任何形式的捐助,
也包括参与到项目代码更新或意见反馈中来。
谢谢!

资金捐助(支付宝钱包扫一扫)