背景
我有两个服务需要通过消息队列相互通信。一种是用 PHP 编写的遗留服务,另一种是用 Java 编写的。迟早,PHP 服务将被 Java 重写。它们当前相互通信的方式是写入共享数据库,由其他服务轮询。这就是我试图摆脱并用消息队列替换的内容。
Problem
我现在正在进行的通信是从PHP服务到Java服务。它需要发送一个相对复杂的对象(字符串和整数以及字符串和整数的列表和映射)。理想情况下,该解决方案在 PHP 中可行,在 Java 中也很理想,因为这将成为该项目的遗产。
可能的解决方案
1.
我想出的解决方案是使用以下命令将来自 PHP/Stomp 的消息排队jms-json-object
转型。这些消息是特制的 JSON,这样当它们在 Java 中使用时出队时readObject
,它们可以使用以下方法重建为完整的对象XStream https://x-stream.github.io。这种重建发生在内部ActiveMQ http://activemq.apache.org我只需要确保必要的aliases https://x-stream.github.io/alias-tutorial.html and 转换器 https://x-stream.github.io/converter-tutorial.html已就位。当我们最终用 Java 替换 PHP 组件时,发送消息只需使用writeObject
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)