1
我有一個關於RabbitMQ的spring-messaging(spring integration + amqp)的問題。我有一個基於微服務架構的應用程序。 一個服務於以下方式發佈消息:春季消息AMQP需要從消息傳遞所需的組回覆
@EventListener(AfterCreationEvent.class)
@Publisher(channel = "messages")
public Message<Message> onCreateEntity(AfterCreationEvent<Message> event) {
if (isDisabled()) return null;
String id = event.getSource().getId();
return MessageBuilder.withPayload(event.getSource())
.build();
}
等消息被監聽,例如
@StreamListener("messages")
public void onMessageReceived(@Payload Message input) {
messageService.save(input)
}
微服務具有以下基本配置:
spring:
rabbitmq:
host: rabbit
port: 5672
cloud:
stream:
bindings:
messages:
producer:
required-groups: terminal,chat,security
destination: message.share
binder: rabbit
binders:
rabbit:
type: rabbit
和每個服務都有自己的配置,例如:
spring:
application.name: message
cloud:
stream:
bindings:
messages:
content-type: application/json
和
spring:
application.name: terminal
cloud:
stream:
bindings:
messages:
group: terminal
,它工作正常。但它以異步方式工作,但我希望收到消息傳遞的每個必需組的回覆。可能嗎?
現在我用彈簧集成 - AMQP工作:4.3.1.RELEASE
事情是,org.springframework.messaging.core.GenericMessagingTemplate方法doSendAndReceive,但我不知道如何配置發佈者的消息和使用doSendAndReceive方法 – b3lowster