- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
是否有一种简单的方法可以为通过队列发送的每条消息创建一个副本,以便在需要时用户可以浏览之前传输的消息列表并通过单击按钮多次重播它们?
我有程序 X 将消息发送到队列,然后程序 Y 将其读入。我希望能够重播之前发送的消息,而不必返回程序 X 并重新生成它。
最佳答案
如果您没有太多消息或太多队列,可以通过简单的方法开始。
首先,您可以设置将消息复制到“复制队列”。使用此策略,每个队列必须执行一次。在 activemq.xml
<destinationInterceptors>
<virtualDestinationInterceptor>
<virtualDestinations>
<compositeQueue name="INVOICE.OUT">
<forwardTo>
<queue physicalName="INVOICE.IN" />
<queue physicalName="INVOICE.COPY" />
</forwardTo>
</compositeQueue>
</virtualDestinations>
</virtualDestinationInterceptor>
</destinationInterceptors>
然后使用工具浏览COPY队列中的消息,如果需要,将它们重新发送到OUT队列。我喜欢 Hermes JMS这类事情的工具。
如果你想要更花哨的东西,你可以阅读 mirrored queues .
还有另一种相当简单的方法可以轻松复制所有消息。
使用与 activemq 捆绑在一起的 apache-camel。camel.xml
中的此配置将实现将所有消息自动复制到以 FOO 开头的队列。*这条路线需要对复制队列名称进行一些修复,但原则上它可以作为窃听的一次性配置。
<route>
<from uri="activemq:FOO.>"/>
<setHeader headerName="CamelJMSDestination">
<simple>COPY.${header.JMSDestination}</simple>
</setHeader>
<to uri="activemq:dummy"/>
</route>
这里一个非常重要的方面是,如果您存储所有消息,您的服务器将随着时间的推移而填满。我建议你阅读 ActiveMQ memory management或者,只保留给定时间范围内的消息副本。从发送系统实际上可以设置 message expiry 的意义上说,这可以是自动化的。以便消息在数天/数周/数月后自动删除。
关于java - 重播通过 ActiveMQ 发送的消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13882523/
我想在 vim 中从光标到缓冲区末尾的打开缓冲区的每一行上运行我刚刚在寄存器“x”中记录的宏。我该怎么做? 我知道我可以重播宏 n 次: 15@x ...或者只需按住 @ 直到到达最后一行,但我只想按
因此,我最近尝试学习html5知识,并获得了音频标签。在PC的浏览器Chrome上似乎可以正常工作,但在Android(4.0,同时使用常规浏览器和海豚)上却不能正常工作。它将播放一次音频,但不会再播
我有兴趣使用 PHP 构建一个解析器来享受我的乐趣。我需要知道什么?你对我有什么建议?我什至如何使用 PHP 打开星际争霸 2 重播? 最佳答案 SC 回放文件实际上是一个 MPQ 存档文件。此 MP
我有一个使用 Animate.CSS 的动画如果用户愿意,我想重播,但我尝试的方法不起作用。这是代码: HTML:
在 ASP.NET MVC 中防止一个有效 cookie 一次被多个客户端使用的“最佳实践”是什么? 在这种情况下,我们使用了所有 OWASP 技巧。 严格的 HSTS:每个页面都使用 HTTPS/S
我有一个 AVPlayer 类,全部设置为流式传输音频文件。它有点长,所以我不能在这里发布整个内容。我坚持的是如何让用户在听完一次音频文件后重播。当它第一次完成时,我正确地收到通知 AVPlayerI
我正在尝试用 sipp 重播捕获的 pcap 文件。我的设置有 2 台电脑和一个代理。接收电脑有 linphone,应该能够接听来自另一台发送带有 sipp 的 pcap 文件的电脑的调用。我已经用
我有一个网页,如果应用了某些样式,滚动时可能会出现卡顿。我的问题是如何系统地测试个人风格的效果。我不想每次都手动向下滚动页面,我想执行一些可复制的操作,以便轻松比较两个不同样式表的效果。是否可以录制和
我想从 Clojurescript 建立一个 Om session ,它可以在另一台机器上回复整个 GUI。我如何才能将原子从客户端传递到服务器,以便只发送更改,以便可以在其他地方重播更改历史? 更新
我一直在使用 React Native Video 模块并且它工作得很好,但是我需要播放结束时的视频自动倒回到开头。视频实例可以选择使用: onEnd={this.onEnd} 视频播放结束后调用一个
我的计算机上有一些虚拟机,它们通过主机专用网络相互通信。 我想模拟这些机器之间的中间人攻击。我发现的所有运行 MITM 的工具都只是监视数据包,但我没有找到任何可以真正重放或更改它们的工具。 我发现了
我是 FreeGLUT 的当前维护者之一sourceforge 上的项目。此代码存储在 SVN 存储库中,但为了激发其他人的贡献,我想提供一个 git 存储库。我已经在 github 上有一个 svn
我正在开发一个有很多命令行交互的系统。有时甚至通过 SSH。命令有时可能需要长达 30 分钟才能完成。 目前,我正在停止对执行该系统调用的对象的大部分 system 调用。例如: class Back
我们如何在delve session 中轻松查看decimal.Decimal值的浮点值。尤其是在 mozilla rr 录制的 dlv replay session 中。 (dlv) args un
我是一名优秀的程序员,十分优秀!