1

这是场景:我们正在实现一个应用程序,它允许用户与本地端点“通信”。我们正在做一些研究,Windows Azure 服务总线主题似乎是一个不错的选择,因为它可以帮助我们创建双向通信并帮助我们解决防火墙、NAT 设备的问题。但是,由于用户通过无状态 Web 应用程序(在本例中为 MVC 3)与机器交互,因此不接受在每个请求上
重新创建TopicClient 。
由于每个用户都有自己的端点,因此按照某人的建议共享一个TopicClient也是行不通的。
另一种方法是使用会话为每个用户保留 TopicClient,但对于无状态并托管在 Windows Azure Web 应用程序上,使用会话似乎不是一个好的选择。

任何帮助将不胜感激。

4

1 回答 1

0

客户端和服务之间的实际连接存在于 MessagingFactory 级别,从该工厂创建的所有 TopicClient 对象将共享相同的连接。因此,您可以根据需要缓存 MessagingFactory 和/或任意数量的 TopicClients。此外,这些对象是线程安全的,因此可以由不同的消费者同时共享和使用。

于 2012-08-30T01:32:52.260 回答