本帖最后由 wfc 于 2022-7-16 07:53 编辑
a.php实际上每秒有10个ip同时访问,如何实现每秒只执行一个ip的请求,同一秒剩余9个的请求实际上代码是不执行的? 大佬果然厉害,感谢各位 |
说得太复杂,,,,
做一个文件锁就行了 touch(‘abc.lock’) 如果存在这个abc.lock 就不执行了 事情做完了,把abc.lock删掉 |
本帖最后由 司马南 于 2022-7-16 07:16 编辑
等待一秒后执行下一次? sleep |
以我半杯水的水平只能想到用mysql来限制 |
sleep不行的,其他ip请求会执行 |
需要额外的存储来限制,例如redis |
包起来啊加个判断, |
redis也只能限制每个ip在n秒的请求数吧? |
其他ip的同一秒请求在a.php会认为是一个新的请求 |
本帖最后由 snoywing 于 2022-7-16 07:25 编辑
队列,请求都插队列里,如果当前请求在队列是当前秒数第一则处理,队列数据存活周期两秒。 |
大佬这个好像有用,我找找代码试试 |