首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将ActiveMQ内部的逻辑路由到特定的工作池

将ActiveMQ内部的逻辑路由到特定的工作池
EN

Stack Overflow用户
提问于 2017-01-16 05:55:47
回答 1查看 435关注 0票数 0

我有个计划,

我有相同的队列配置短信和电子邮件。

我希望ActiveMQ将消息路由到特定的使用者池,也就是说,如果它是一个短消息,那么它必须被路由到一个短消息工作线程池。

因此,如果我需要扩大SMS的数量,那么我只需要增加SMS员工池的池大小,而不是电子邮件工作者池。

我可以使用Apache为我的需求实现路由逻辑吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-16 22:10:33

有若干备选办法支持这一点:

  1. 在每个消息上设置一个标头,这样使用者就可以使用JMS选择器来过滤消息。
  2. 在ActiveMQ代理中使用虚拟目的地(代理可以根据消息头值进行筛选):http://activemq.apache.org/virtual-destinations.html
  3. 使用Camel broker组件编写自定义拦截器处理程序:http://activemq.apache.org/broker-camel-component.html
  4. 按照纳扬的建议,使用骆驼消息路由器或基于内容的路由器。
  5. 根据消息类型使用单独的队列(即queue://OUTBOUND.SMS,queue://OUTBOUND.EMAIL.)

两者都有好处,也有取舍。#1、#4和#5不需要任何服务器端配置,这对于保持代理维护尽可能低很方便。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41670248

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档