gpt4 book ai didi

c# - 将 ASP.Net 连接到 Wcf/Tcp 聊天服务

转载 作者:太空宇宙 更新时间:2023-11-03 14:37:18 25 4
gpt4 key购买 nike

我有一个接受双工 tcp 连接的 WCF 聊天服务。单个双工 tcp 连接可用于为多个用户发送和接收消息(因此我可以拥有多个相互连接的聊天服务器)。

现在我想将 Web 用户添加到组合中,让他们与桌面用户聊天。这是一个现场支持类型的东西。基本上,我正在尝试找出从 ASP.Net 到此聊天服务进行“带外”通信的最佳方式。

我在想我可以与其中一个聊天服务器建立静态/全局双工连接,并且我可以将它用于对该 ASP.Net 服务器的所有请求。这行得通吗?双工连接都是单向调用,我可以在不锁定访问权限的情况下使用这个 WCF channel 吗?

更新:感谢您到目前为止的建议。我应该注意到:我的聊天服务是自托管的,它没有在 IIS 中运行。因此,我主要关心如何让 IIS 保持连接打开直到应用程序卸载。从网络浏览器到 IIS 的连接将是 silverlight、flash、ajax、iframe 等等。

最佳答案

最好的办法是在应用程序级别实现双向消息队列,按用户和 session 标识符对消息进行索引。然后,您可以让应用程序级别的 WCF 服务(又名对等)基于等待对象弹出和推送。对队列的访问将需要被锁定,但这是相对较低的成本。 WCF 服务将完成繁重的工作。不过,在某些时候,如果仅使用一个代理发送消息,我预计该应用程序会遇到瓶颈。在我看来,每个 session 都有一个专用的 channel 代理可能会更有效率,从而使事情不那么有状态。我还允许非双工连接,因为所有消息都是单向操作。

关于c# - 将 ASP.Net 连接到 Wcf/Tcp 聊天服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/506052/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com