Java 微服务之间基于消息的通信
我想构建一些使用消息代理发送和接收消息的微服务:ActiveMQ。现在我正在探索消息类型的选项(即Java 微服务之间基于消息的通信,java,activemq,publish-subscribe,microservices,Java,Activemq,Publish Subscribe,Microservices,我想构建一些使用消息代理发送和接收消息的微服务:ActiveMQ。现在我正在探索消息类型的选项(即String,byte[],对象类型): 以XML/JSON格式发布消息,并在收到消息后对其进行解析 以XML/JSON格式发布消息,使用模式将其转换为对象 创建域对象并添加到microservices依赖项以进行数据交换 这是我已经看过的3个选项,我倾向于选项1,原因如下: 当需要添加新字段时,只有需要此字段的微服务需要更改 可以在不中断现有通信的情况下部署不同版本的微服务 微服务保持解耦 然而,
String
,byte[]
,对象类型):
我想知道是否有其他人做过类似的设计,可以分享他们的经验并提出解决方案。另外,如果有更好的方法使用消息传递和队列实现微服务之间的通信。这是我通常采用的方法:对于每种消息类型,一个类负责对消息进行编码(生成JSON/XML/whatnot)、验证和解析。类进入一个库,然后在发送消息的服务和接收消息的服务上使用该库