![]() |
1
1
似乎是一个很好的解决方案,不过也许您可以使用session_id()而不是IP地址。这样,如果你和路由器后面的人打交道,你就不会阻止那些没有敲打的人。虽然清除cookies可以很容易地重新生成会话id,但这样做可能比仅仅等待5秒要花更长的时间。您绝对不想在php脚本中睡觉,因为它只会在睡觉时占用php进程。 您可以设置另一个memcache项来跟踪他们在1小时内达到警告的次数,然后您可以执行更严厉的操作,或者记录用户信息。 不过,最好是尽量优化操作,这样成本就不会那么高(说起来容易做起来难)。 |
![]() |
2
0
你可以使用 token bucket algorithm 用于速率限制。我已经为你实现了: bandwidth-throttle/token-bucket 我也建议不要睡觉,因为你会阻塞服务器的资源。只需使用http状态代码429退出:
但是如果你真的想睡觉你可以用
|
![]() |
Xceptions · Google云正在缓存我的静态文件 7 年前 |
![]() |
Thread7 · memcache出错 7 年前 |
![]() |
Nick M · Rails/Dalli:从另一个命名空间终止片段 7 年前 |
![]() |
ctor · 有限时间存储数据:memcache与mysql 7 年前 |