redis
文章平均质量分 58
qq_540616979
我是一颗小小小草
展开
-
PHP-Redis实现分布式乐观锁,悲观锁
乐观锁悲观锁使用场景请看这篇乐观锁悲观锁使用场景一: 悲观锁特性:1:互斥性,一个线程获取后其他不能获取,等待或者返回false2:不能死锁,超时应该自动释放3:锁应该只能由加锁人解锁下面是redis 实现的伪代码/** * Class RedisLock * @package app\common\model */class RedisLock { private $redis; private $lock; public function __const原创 2021-04-23 16:57:03 · 20060 阅读 · 0 评论 -
PHP高并发项目性能优化及接口安全实践(企业实践)
记录之前公司微信投票项目性能优化过程及安全相关项目:微信投票,依赖于微信授权框架:yaf,php 7.0规则:每人每天30票(未绑定手机的20票,可以无限送礼,新用户进入直接微信授权后添加用户即可获得20票)已有用户数:50w+原始方案:LNMP php模板渲染高并发页面:投票主页,选手详情页面(含投票活动信息,选手信息,票数,礼物等)压力并发:单机+单库 (8pvc 16g) QPS<150公司要求:QPS 3000+,投票时间一个月,不缺钱优化方案:一:架构修改1:数原创 2021-04-21 15:11:35 · 32928 阅读 · 0 评论 -
Redis乐观锁,事务multi,watch之间的先后关系
Redis乐观锁,事务multi,watch之间的先后关系1:watch 必须在 multi之前,不然watch 无效,事务都会执行成功 $v=$rds->get("test"); $rds->set("test",333); //先起事务 $rds->multi(); //添加watch $rds->watch("test"); //模拟操作,此时其他线程已经修改test 值原创 2021-04-19 16:50:54 · 9050 阅读 · 0 评论