redis五种常见使用场景下PHP实现
前言
redis等nosql简单高效的解决了高并发场景下的一系列问题,并很大程度的解放了持久化DB的业务压力。
实现
- 基于redis字符串string类型的简单缓存实现
- 基于redis列表list类型的简单队列实现
- 基于redis字符串setnx的悲观锁实现
- 基于redis事务的乐观锁实现
- 基于redis的发布订阅实现
测试用例
5种使用场景都提供测试用例,使用方法:
- 克隆项目: git clone git@github.com:TIGERB/easy-tips.git
- 运行脚本: php redis/test.php [实例名称],
例如测试悲观锁: 运行 php redis/test.php p-lock运行结果:
执行count加1操作~
count值为:1
运行 php redis/test.php 获取参数列表 |
源码
源码地址 https://github.com/TIGERB/easy-tips
这是我的一个关于《一个php技术栈后端猿的知识储备大纲》的知识总结,目前只完成了“设计模式”。
纠错
如果大家发现有什么不对的地方,可以发起一个issue或者pull request,我会及时纠正,THX~
补充:发起pull request的commit message请参考文章Commit message编写指南