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

前端之家收集整理的这篇文章主要介绍了.net – 从服务器端应用程序向客户端发送消息?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个基于 javascript的客户端,目前正在为新内容轮询.NET Web服务.虽然轮询工作……我对这种方法不满意,因为我正在使用系统资源并在没有任何接收更改时创建开销.

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

解决方法

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

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

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

猜你在找的Java相关文章