我必须在点对点消息传递体系结构中处理大约100个JMS队列。每个队列都有一个消费者。所以我将有100个消费者线程来处理它们。可以吗?
发布于 2016-02-02 14:53:54
1)ActiveMQ支持你的请求(建议写一个连接池)2)确认你的服务器配置是否正常,QPS高的时候,
发布于 2016-02-03 10:19:14
您可以使用单个队列并提供JMS消息属性,让每个使用者只过滤它想要的消息,而不是100个队列。
这样做的目的是在架构和部署方面为您提供更多选项。您可以让单个进程使用多种类型的消息。根据您的伸缩性问题,您可能会有多个单个使用者的实例分布在进程/服务器/其他任何地方。
您还可以让一个使用者处理所有100个逻辑队列,读取属性并确定在内部将消息传递到何处,这同样取决于您遇到的任何设计问题。
总体而言,消息传递是如此轻量级,以至于需要大量消息或大量单独的消息才能真正伤害事物。我有一个ActiveMQ应用程序,它在重启时可能需要处理10K/20K消息,并且在几秒钟内就完成了。相当小的消息,但仍然很有可能(我使用其他my的经验是类似的性能,只要您的处理不是太困难,您应该能够跟上)。
https://stackoverflow.com/questions/35146028
复制相似问题