回答
如果你可以使用外部库,番石榴有可能根本你问这是什么一个RateLimiter类:
速率限制器经常被用来限制在哪一些物理或逻辑资源被访问的速度。这与Semaphore相反,它限制了并发访问的数量而不是速率。
这个解决方案可能会浪费机会 - 如果我每天被允许喝两杯啤酒,并且在头16个小时内我没有喝酒,我会失去1杯啤酒。目前还不清楚这对于OP的问题是好还是坏。 – irreputable 2013-02-26 19:37:29
@irreputable他的要求不是很精确 - 这可能或可能不是一个好的解决方案。但它会是一种控制每秒写入db的记录数量的方法。 – assylias 2013-02-26 19:38:43
谢谢Assylias。它有助于。那些关闭了我的问题,说它没有准确定义的人,应该远离访问这个线程。 – 2013-02-26 21:56:48
您可以创建一个允许对象的BlockingQueue
并且有一个额外的帮助程序线程,该线程每秒向队列添加一次额外许可的RPS数量。写入线程会阻塞队列,并且不会写入,直到他们成功地从队列顶部弹出一个许可证。
它可以在空闲时间累积许可证,然后在一秒钟内释放它们。它确实长时间工作。问题往往是要求不准确。 – irreputable 2013-02-26 19:31:59
您可以添加许多功能,最大尺寸,以便在一秒钟内更均匀地分散负载,并提供大量创意。虽然问题不是那么具体! – Affe 2013-02-26 19:34:12
- 1. 速率限制算法限制请求
- 2. 速率限制如何限制API
- 3. Yii2限制AccessControlFilter逻辑
- 4. Dailymotion API的速率限制
- 5. Nginx:动态速率限制
- 6. 速率限制注册API
- 7. Twitter的速率限制?
- 8. 超出速率限制
- 9. OkHttp API速率限制
- 10. Soundcloud和api速率限制
- 11. Flask无Redis速率限制
- 12. Twitter API速率限制
- 13. 并发与速率限制
- 14. Ggmap“dsk”速率限制
- 15. Twitter的速率限制
- 16. Pinterest的API速率限制
- 17. 摆动速率限制
- 18. Java循环逻辑机制
- 19. 轨道控制器的速率限制
- 20. 限制邮件发送逻辑
- 21. IsUserInRole业务逻辑的码头限制
- 22. 概率逻辑与模拟
- 23. 播放WS API:限制请求速率
- 24. 速率限制可观察到的
- 25. Python旋风速率限制AsyncHttpClient获取
- 26. Twitter速率限制检查和缓存
- 27. 使用ASP.NET和global.asax限制速率
- 28. Django:简单的速率限制
- 29. 速率限制类视图瓶
- 30. 通过IP的API速率限制
你做了什么工作?什么研究?你有什么尝试? – Gray 2013-02-26 19:28:24
各种想法在这里:http://stackoverflow.com/questions/14638349/java-thottling-mechanism – irreputable 2013-02-26 19:28:48
耶稣,这不是一个真正的问题?当然这个问题没有很好的定义,但这是所有问题的缺陷。它是发现问题的质量保证过程的一部分。这个特别的问题是相当合理的,读者基本上明白了什么是追求,读者可以提出有用的想法。 – irreputable 2013-02-26 20:16:46