.net core 如何使用.net core 3.1后端设置分布式系统

.net core 如何使用.net core 3.1后端设置分布式系统,.net-core,rabbitmq,messagebroker,event-bus,nats.io,.net Core,Rabbitmq,Messagebroker,Event Bus,Nats.io,我的部门来自.NET 4.8 wcf/wpf客户机/服务器体系结构世界。但是时代变了,在将.NET连接到web应用程序、移动应用程序和(还有)桌面应用程序的后端方面有了新的要求。我们在如何将消息从后端传输到客户端方面有经验,因为我们实现了自己的网络TCP消息代理 这是我问题的第一个主题: #1使用googleprotobuf/amqp事件代理是否是将微服务与所有类型的客户端(web、移动、桌面)以及其他后端组件连接起来的正确方式 我目前的调查让我找到了3种产品: 其amqp 使用google

我的部门来自.NET 4.8 wcf/wpf客户机/服务器体系结构世界。但是时代变了,在将.NET连接到web应用程序、移动应用程序和(还有)桌面应用程序的后端方面有了新的要求。我们在如何将消息从后端传输到客户端方面有经验,因为我们实现了自己的网络TCP消息代理

这是我问题的第一个主题:

#1使用googleprotobuf/amqp事件代理是否是将微服务与所有类型的客户端(web、移动、桌面)以及其他后端组件连接起来的正确方式

我目前的调查让我找到了3种产品:

  • 其amqp
  • 使用google protobuf消息协议,包括MySQL/Postegres中的事件存储
  • 使用google protobuf消息协议,在自己的数据库系统中包含事件存储
这就引出了我的第二个问题:

#2您对这些产品有何体验?有什么优点、缺点或陷阱吗

我们不需要任何集群系统或高度可扩展的解决方案,因为每个客户都有自己的封装系统,包含<40个客户端。但我们需要可靠的消息/事件传输(应该由上述3个代理中的任何一个实现)


BR Christian

您忘记了在.NET Old和.NET Core中工作的SignalR(尽管有不同的实现)。手机是一个完全不同的故事,因为几乎每个人都使用一个或另一个平台提供的通知服务。甚至web应用程序也会使用平台通知来处理那些烦人的网站通知。这个问题太广泛了,无法回答这三种产品也非常不同,事实上,可以在同一个项目中使用它们。一个是“简单”的消息代理,第二个是复杂的CNCF消息传递系统,与RabbitMQ有一些重叠,而第三个是完全无关的实现—DDD样式事件的数据库。@PanagiotisKanavos感谢您的反馈。我们不考虑SignalR,因为我们需要可靠的消息传递。据我所知,signer不保证消息传递。