PHP做的聊天室,禁止刷屏思路

来源:百度知道 编辑:UC知道 时间:2024/06/18 17:09:02
有没有什么巧妙的办法?
有种最死板的方法是,判定这一句发送的时间的前3秒内所有相同的语句是否超过n个。如果是就判定为刷屏。
不过这样每发一句话都要进行一次数据库的调用,感觉麻烦了点,有没有别的办法,最好是用js就能完成的,不要调用到数据库。

在客户端做一个先进先出的缓存
比如定义一个字符串数组cache(10)
每说一句话就把自身(或者hash值)和timestamp记入缓存,并且清除缓存中timestamp到现在大于3秒的
如果这个cache达到一定体积,就不允许再说话