一个很活跃的投票系统,平均每天2000万人通过此程序投票,设计一个限制程序,要求每个QQ10分钟内仅限投5票
10分钟限投5票,可以查找该qq号最近5次投票,查出来少于5次允许投票,查出来等于5次的话,最早的一次距现在小于10分钟的话禁止投票单日2000万,可以考虑把每个qq最近5次投票记录放到redis里。
Redis 加个计数器,统计次数。这个计数器的 key 设置过期时间10分钟。
把投票qq放入redis,有效期10分钟,投票时判断redis中该qq已有次数
投票了存在redis 用nginx+lua脚本 限制访问 这样在nginx就限制了 并发没有问题
2 回答1.3k 阅读✓ 已解决
1 回答988 阅读✓ 已解决
2 回答849 阅读✓ 已解决
1 回答1k 阅读✓ 已解决
2 回答906 阅读
1 回答891 阅读
1 回答820 阅读
9 回答7.8k 阅读✓ 已解决
2 回答3.3k 阅读✓ 已解决
4 回答2.9k 阅读✓ 已解决
6 回答4.9k 阅读
2 回答1.8k 阅读
10分钟限投5票,可以查找该qq号最近5次投票,查出来少于5次允许投票,查出来等于5次的话,最早的一次距现在小于10分钟的话禁止投票
单日2000万,可以考虑把每个qq最近5次投票记录放到redis里。