gpt4 book ai didi

java - Apache ActiveMQ/TomEE 帮助 : How do I configure embedded brokers to store-and-forward?

转载 作者:行者123 更新时间:2023-12-01 13:35:24 25 4
gpt4 key购买 nike

我们有两个 JEE6 应用程序正准备部署。应用程序的一部分将运行云并向 JMS 队列生成消息。应用程序的另一半将在我们的服务器上运行并使用 JMS 队列中的消息。应用程序的两个部分作为单独的 war 运行,并部署到 Apache TomEE 1.6(顺便说一句,这很棒),并使用最新的 JEE 和 CDI 规范编写。

消息持久性是我们主要关心的问题,但我们愿意假设云应用程序将具有 100% 的正常运行时间并手动处理异常情况。本地应用程序将经常重新启动,因为我们正在改进它的设计并进行大量更改。

阅读 ActiveMQ 文档后,我非常确定我们想要的是存储转发架构。他们的文档有点模糊的是属性 http://activemq.apache.org/vm-transport-reference.html 的方式。转化为创建这种架构。

最后一个挑战是本地经纪商需要非常快。它不仅会消耗远程队列中的消息,还会在本地写入和读取多个队列。幸运的是,本地代理上生成的任何队列都不需要在本地以外的任何地方使用。但这些消息必须是持久的。 ...如果我设法做到这一点,我需要弄清楚如何运行双向 SSL!!

TLDR 是我的两件事:帮助我开始的示例 URL 配置,或者关于 ActiveMQ 中的哪些选项比我上面所说的更好的建议。谢谢!

最佳答案

经过 8 个小时的艰苦实验,事实证明这并不是那么困难。它只是有记录或非常清楚......并且我在其中一台主机上启用了 ipv6,这导致了各种问题。

在“云”服务器上,您将使用此

<Resource
id="MyJmsResourceAdapter"
type="ActiveMQResourceAdapter">
BrokerXmlConfig = broker:(tcp://0.0.0.0:61617,network:static:tcp://ground.server.com:61617)?persistent=false
ServerUrl = vm://localhost
</Resource>

在您的“地面”服务器上,

<Resource
id="MyJmsResourceAdapter"
type="ActiveMQResourceAdapter">
BrokerXmlConfig = broker:(tcp://0.0.0.0:61617,network:static:tcp://cloud.server.com:61617)?persistent=false
ServerUrl = vm://localhost
</Resource>

最后,在 Apache TomEE 的 JAVA_OPTS 中禁用 ipv6。您可以通过在 bin/中创建 setenv.sh 并输入以下内容来完成此操作:

export JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true"

现在...找出 SSL。希望这对某人有帮助!

关于java - Apache ActiveMQ/TomEE 帮助 : How do I configure embedded brokers to store-and-forward?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21313281/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com