我有几个微服务:
在 WebClient 中,我有一个名为 MessageBusClient 的类(与 RabbitMQ 一起使用)。我应该将所有请求发送到这个 ONE 类中的各种服务,还是应该将此客户端拆分为多个类(例如 MessageBusServiceOneClient、MessageBusServiceTwoClient),并以这种方式分离该逻辑并且没有意大利面条代码?
有一个类负责发送消息是相当正常的,并且会被认为是“单一的事情”。但它应该能够处理任何任意消息。如果它需要以某种方式以不同方式处理服务一和服务二的消息,您可能需要考虑制作两个单独的版本。
另一种思考方式是基础设施逻辑和业务逻辑。整理消息是基础设施。处理消息是业务逻辑。 Ofc,一个好的架构比这复杂得多。