加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

.net – 从服务器端应用程序向客户端发送消息?

发布时间:2020-12-14 16:40:49 所属栏目:Java 来源:网络整理
导读:我有一个基于 javascript的客户端,目前正在为新内容轮询.NET Web服务.虽然轮询工作……我对这种方法不满意,因为我正在使用系统资源并在没有任何接收更改时创建开销. 我的问题是如何通知我的客户有新的内容供它显示?我愿意接受任何其他技术来实现这个解决方
我有一个基于 javascript的客户端,目前正在为新内容轮询.NET Web服务.虽然轮询工作……我对这种方法不满意,因为我正在使用系统资源并在没有任何接收更改时创建开销.

我的问题是如何通知我的客户有新的内容供它显示?我愿意接受任何其他技术来实现这个解决方案.

解决方法

首先,投票是可行的方法.您可以使用Flash或Silverlight或Comet – http://en.wikipedia.org/wiki/Comet_(programming)来执行此操作,它可以保持打开tcp连接以进行通知.网页本身无法打开套接字,因此无法直接通知Web客户端.

[编辑]
但想想看,有多少客户端可以同时为一台服务器提供tcp连接?对于更大的系统,由于有65k端口可用,因此可用的插槽很快就会耗尽.
服务器可以处理多少并发连接取决于您的硬件资源.如果你有足够的内存和CPU,你应该能够处理~100k甚至更多.但是,如果每个请求通过tcp / ip访问数据库或其他资源,则可能限制为每个可用ip的端口数(65k).您还应该推送请求针对单独的域,因为浏览器通常会限制每个域的两个并发连接,因此您不会干扰正常的页面加载.

将轮询与前端缓存服务器结合使用是一个很好的解决方案.您可以在服务器上使用逻辑来更新每个客户端的缓存,从而减少每个轮询的负载.您可以为在X分钟内登录/轮询的用户更新缓存,以进一步减少缓存更新.对我来说,实施拉动比拉动更容易,技术明智.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读