【发布时间】:2021-06-05 04:25:01
【问题描述】:
在 Chris Richardson(2019 年)的《微服务模式》一书的第 67 页讨论异步消息传递时,作者写道:
同步 - 客户端期望服务及时响应,甚至可能在等待时阻塞。
异步 - 客户端不阻塞,响应(如果有)不一定立即发送
鉴于此,似乎从“同步”通信转向“异步”通信实际上只是将一个同步服务(例如,服务 A)与不同的同步服务(例如,消息代理上的侦听端口,如 Active MQ, Kafka、IBM MQ、AWS Kinesis 等)。
这是因为客户端在与代理通信时可能仍必须阻塞(或至少使用 1 个线程或池中的连接),而不是直接与服务 A 通信——尤其是因为客户端可能期望代理响应(例如,SUCCESS)用于可靠性目的。
这个分析正确吗?
【问题讨论】:
标签: asynchronous microservices messaging messagebroker