我已经让 Sring Xd 在分布式模式下运行,现在开始运行一些 JMeter 测试。
我的问题是关于生成的负载如何以分布式模式分布在容器之间。
如果我为 100 个用户分别生成 1000 条消息,我希望此流量在两个或多个运行的容器之间分配。
这可能吗?还是一个容器承担全部负载?在我目前的设置中,这似乎正在发生。
我已经让 Sring Xd 在分布式模式下运行,现在开始运行一些 JMeter 测试。
我的问题是关于生成的负载如何以分布式模式分布在容器之间。
如果我为 100 个用户分别生成 1000 条消息,我希望此流量在两个或多个运行的容器之间分配。
这可能吗?还是一个容器承担全部负载?在我目前的设置中,这似乎正在发生。
流定义是什么?而且,具体来说,源模块是什么?
如果它是一个 http 源,您将需要一个负载均衡器(与任何 http 应用程序一样)。您可以使用硬件平衡器或软件,例如 Apache(mod_proxy 等)。
编辑:我在下面的评论中提到了部署清单。
部署不同于流定义。这是关于如何部署已定义的流。
有关部署清单的信息,请参阅参考指南。该链接用于 M7 文档,当前文档可在Wiki上找到(使用浏览器的“查找”功能搜索Deployment Manifest
)。
对于这个流...
xd:>stream create test1 --definition "http | transform --expression=payload.toUpperCase() | log"
您可以使用 3 个转换实例
xd:>stream deploy --name test1 --properties "module.transform.count=3"