vert.x - Vertx 事件总线中的限制消息
问题描述
由于 Vertx 中的 eventbus 是为异步消息传递而设计的,是否可以限制这些消息的处理速率?如果是这样,我们可以使用worker verticles实现还是我们必须创建一个单独的线程组。关键是事件总线可能能够排队一百万条消息(我猜是数字),在工作人员/线程下发生的后续操作不应该被淹没并最终导致某些事情失败。请撕碎一些光。
解决方案
Worker 永远不会被 EventBus 淹没,因为处理程序一次只会处理一条消息。
但是,如果您产生数百万条未处理的消息,可能会发生内存不足的情况。
通常情况并非如此,但您可以尝试使用Counter
in解决该问题SharedData
:
https://vertx.io/docs/apidocs/io/vertx/core/shareddata/Counter.html
推荐阅读
- pdf - 如何在浏览器中打开 pdf 而不是在 webapi 中下载
- php - 尝试将函数添加到已经存在的 PHP 库
- windows - 如何使用通配符对目录中的文件进行计数?
- api - 使用 AA.com 网站上的发布 API 添加的随机生成的密钥
- java - 带有列表视图的视图持有者单选按钮
- oracle - OBIEE 创建存储库失败
- reactjs - React JS - TDD - 建议
- laravel - Laravel Flash Message - 显示已从 Voyager 管理面板设置的未转义 html
- xcode - 在 Xcode 中为 Objective-C 文档中的参数编写多行描述
- macros - 出乎意料地“不太可能”之前的clang格式中断