组合使用ActiveMQ并在IIS/AppFabric中运行的单个实例WCF服务的最佳方式是什么?如何使用WCF和IIS启动时连接到ActiveMQ
我们的服务需要同时支持HTTP传输和ActiveMQ(侦听和发送消息)。我们选择不使用MSMQ,并使用Spring.Net.NMS。我现在面临的基本问题是,ActiveMQ需要在启动时连接到队列并保持连接状态,但WAS正在使用它的消息激活功能。如果服务在消息到达之前未被激活(HTTP/MSMQ等),则不会触发与AMQ的连接。
我知道我可以禁用回收行为,我知道我可以使用Windows服务进行自托管。但我想利用AppFabric中的监视和其他功能。我已经与IServiceBehavior一起走下了这条路,并将其用于其他好事。但是,只有在(非AMQ)消息到达之前,才会调用该接口。所以它不会为此工作。我所希望的是在ServletContextListeners如何在Java中工作,在那里你同时获得启动和关闭事件。但在WAS中似乎没有这样的东西......它只是由消息到达驱动的。
我已经搜索了3天的每一寸网页信息,唯一遇到的是使用静态类构造(C#)技巧作为触发器。这是一个黑客,但我可以忍受它。它仍然留下彻底关闭的问题,我可以在后面找到。
任何人都有一个坚实的解决方案呢?