代码之家  ›  专栏  ›  技术社区  ›  Darius X.

SEDA可以帮助扩展JMS用户吗

  •  0
  • Darius X.  · 技术社区  · 6 年前

    如果我有一个驼色的JMS消费者,

    • 最大电流消耗=10
    • 从最大池大小为10的MQ读取 连接),以及
    • DisableReplyto=真

    Q1。 增加maxConcurrentConsumers有助于扩展路由吗?从队列中读取消息后,是否放弃连接?

    Q2。 在使用消息后立即放置SEDA生产者消费者模式是否可以帮助扩展?或者,是仅仅增加JMS消费者的maxConcurrent消费者?

    enter image description here

    1 回复  |  直到 6 年前
        1
  •  1
  •   Claus Ibsen    6 年前

    通常情况下,最好让JMS使用者进行伸缩,然后通过添加更多节点进行横向伸缩。

    SEDA是JVM中的内存队列,即使您可以通过从JMS队列快速消费到SEDA队列来“扩展”,那么您只需将消息从代理中的“安全”存储移到JVM内存存储中更“不安全”的存储。

    JMS代理是为可伸缩性而构建的,它有几种体系结构样式和拓扑结构,可以根据您的需要设置代理系统。所以最好利用它。

    JMS组件有设置并发性的选项,您也可以进行调整。以及在JMS客户机/代理方面。例如,ActiveMQ有预取大小和其他可以调整的大小。

    戴上我的商业帽子:如果你是保险丝订户,那么我们有缩放保险丝/AMQ的指南,你也可以阅读,并从我们的团队获得帮助。