开发 c# amqp 微服务时使用什么项目模板

What Project template to use when developing a c# amqp microservice

我应该如何构建基于 amqp 而不是 rest 的 c# 应用程序。 .NET Core webapi 期望通过标准 Http 发出请求,而不是来自 rabbitmq 等 amqp 服务器的消息。我正在尝试使用 c# 开发微服务,但 rabbitmq 客户端的工作方式似乎不适合 .NET Core rest api,所以是否有一个包可以实现这一点,或者是否有一个 . NET 项目模板特定于此用例。

您可以使用 Worker services I have used it for other message queue technologies. Here is a link to the Microsoft documentation.

这是我找到的一些文章,特别是关于 RabbitMQ 的文章

https://www.programmingwithwolfgang.com/rabbitmq-in-an-asp-net-core-3-1-microservice/

https://codeburst.io/get-started-with-rabbitmq-2-consume-messages-using-hosted-service-e7e6a20b15a6

在 ASP.NET Core 中使用 .NET Generic Host - 请参阅 here 了解设置等

然后您可以使用 NServiceBus, MassTransit or EasyNetQ 等消息传递框架与代理(您的方案中的 RabbitMQ)进行交互。我已经多次使用 MassTransit 并强烈推荐 - 确实使与经纪人的互动变得更加容易。我也听说过 NServiceBus 的好东西,但没有亲自使用它。