EasyNetQ使用asp.net web api作为订阅者

use*_*831 4 rabbitmq asp.net-web-api easynetq

我必须实现一个asp.net web api,它充当rabbitMQ的订阅者.Windows服务将向web api服务发布消息.在生产环境中将运行多个web api实例.我不知道如何打开web api上的订阅者频道并保持打开状态直到IIS重新启动.将有一个出版商和几个消费者.

任何人都可以指导一些示例代码开始?

任何帮助都将非常感激

Mik*_*low 8

通常,RabbitMQ订阅与IIS托管应用程序不兼容,因为您无法控制应用程序何时运行.IIS将按其认为合适的方式回收,停止和启动应用程序.

如果你必须这样做,打开与RabbitMQ的连接并在应用程序启动时开始订阅,例如在Global.asax.cs中,并确保在关闭时正确处理所有内容.

您是好得多建设为订阅一个窗口服务,要么写入共享存储在IIS托管Web服务可以访问,或者自托管的Windows服务里面的API.