因为我们都知道像rabbitMQ这样的消息总线主要用于异步消息传递,因此标准接近是在公共汽车上发布和发布消息,而不用担心谁会处理发布的消息或何时。但是我正在考虑我们的开发团队中有关消息同步处理的最新讨论:情况是将消息发布到服务总线,并且作为发布者,我想等待任何订阅者处理消息并将结果返回给我 - 因此它看起来像而是作为请求 - 响应模型。我现在正在考虑一个类似于这个模型中性能下降的问题。你怎么看?何时使用异步和何时同步?什么是权衡?RabbitMQ同步消息传递的优缺点
0
A
回答
0
同步消息传递是可能的,但影响可扩展性。如果发布商不得不等待其收件人回复,那么在任何给定时间,它都会受到限制。
但是,您可以使用异步消息传递实现请求 - 响应。在RabbitMQ中,您通过Remote Procedure Call (RPC)模式执行此操作。简而言之,您的发布商发布消息,但不会等待回复;在此期间它可以继续做其他事情。发布者确实记录了它,通过在消息上添加CorrelationId并将其存储在本地。该消息最终到达消费者,消费者处理该消息,并在不同的队列上回应发行商。答复有相同的CorrelationId。当发布者收到答复时,它可以将该特定呼叫(通过CorrelationId)标记为已处理。
如果您愿意,您还可以使用CorrelatonId做其他事情,例如超时收到我们未收到回复后的消息。 30秒。
相关问题
- 1. 在Node.JS中的RabbitMQ消息传递?
- 2. RabbitMQ的可靠消息传递
- 3. 同时处理rabbitmq消息
- 4. 使用递归JavaScript函数进行同步的优点和缺点
- 5. RPC在消息传递方面有什么缺点?
- 6. .NET中的消息构造方法优点和缺点
- 7. 经纪和非经纪消息系统的优点和缺点
- 8. 传递消息到DLL的入口点
- 9. 我如何让RabbitMQ重新传递未确认的消息?
- 10. Spring AMQP中的计划/延迟消息传递RabbitMq
- 11. 消息从RabbitMQ的信道传递到Java NIO通道
- 12. Spring消息传递:无法连接到GCP上的远程rabbitmq
- 13. RabbitMQ中的日志消息传输
- 14. 使用JMS/WMQ可以实现同步消息传递?
- 15. 在Safari扩展中传递同步消息
- 16. 在chrome扩展中传递同步消息?
- 17. 同时处理RabbitMQ消息的Spring
- 18. IPC使用数据库共享数据而不是消息传递有什么优点和缺点?
- 19. RabbitMQ高速瞬态消息传递性能
- 20. AMQP/RabbitMQ - 只有实时消息/传递队列
- 21. Rabbitmq:优先消费来自多个队列的消息
- 22. ZMQ消息传递特定端点
- 23. Android消息传递
- 24. 与nservicebus同步的消息
- 25. RabbitMQ重排消息
- 26. RabbitMQ消息交换
- 27. RabbitMQ消息加密
- 28. 休息vs Wcf的优缺点
- 29. Firebase消息传递错误:消息传递/权限被阻止
- 30. Cassandra的消息传递
你能否提供请求 - 响应方式的示例代码? – Macko
你可以在我提供的链接中找到它。 – Gigi