课程
/后端开发
/PHP
/PHP秒杀设计
老师,想学习一下,如何限制刷票的行为呢??
2019-11-29
源自:PHP秒杀设计 2-3
正在回答
代码层面做限流的话,可以用redis来配合做,假设你的一个接口的请求限制的一个IP1s内只能有一个请求,则可以将接口名+IP作为键存一个bool值true,并且设置生命周期为1s,每次处理请求时先从redis里根据“接口名+IP”拿值,如果该值为true,说明一秒内已经有过一次请求,这种就可以直接拒绝不继续往下处理,相反如果拿不到值了,说明之前没有请求过或者请求的时间已经是1s之前了,这种就允许通过,继续处理下面的业务。
一个是对请求进行限流,然后就是封IP,对频繁请求的(指定时间同一IP请求超过多次)IP进行封堵。
举报
利用php+redis打造一个高性能的订单秒杀系统
1 回答老师我现在正在学习swoole。等到时候我用swoole去尝试一下。
1 回答如果是多机服务的话?如何保证多个机器上本地减库存之后的数据同步呢?
1 回答老师能把您的课堂上的笔记发一下吗?
1 回答老师:统一减库存那台机挂了呢?
2 回答老师,可以分享一下代码么