关于服务器推送
前一阶段一直在做服务器推送的技术调研,公司本来希望能够使用web server做一个消息服务器,使用http协议实现服务器到客户端的实时消息推送。做了一些技术调研成果暂记如下:
1, 使用场景:
可行开发的客户端软件,与服务器使用http协议交互信息。用户开机后,与服务器建立http连接,服务器判断是否有针对该用户的消息:升级信息、通知信息等。
2, 两条可行的技术路线:
a) 使用长轮询。客户端动作如下:开机---建立http请求---服务器判断,如果由消息则返回本次http响应---重新建立http请求。
b) 使用多次response应答。客户端与服务器建立连接后,如果有针对某个客户端的消息,则服务器将消息写到缓冲区,并清空缓冲区,这样客户端就可以实时得到应答。
c) 其他方式:Flash,ActiveX,Applet。
3, 两种技术路线优缺点对比:
a) 方式1,优点,整体方案实现简单,客户端实现简单。缺点:实时性差,对服务器的性能要求很高。
b) 方式2,优点:对服务器的性能要求相对较少,没想出来。缺点:复杂,不稳定。
4, 可行的方案:采用tomcat6.0的NIO形式实现方式1,使用一台普通pc机做压力测试,可以同时支持5000台终端同时访问。但是tomcat6.0存在不稳定的现象,当终端数量持续增加时,会发生当机现象。
5, 可能的改进:简单实用了Grizzly,性能应该会更好,但是需要修改grizzly的内核,编程比较复杂,而且参考资料相对较少。
6, 体会:是时候开始研究Grizzly了。
分享到:
相关推荐
【服务器推送技术】 服务器推送技术是一种网络通信模式,它与传统的客户端请求、服务器响应的HTTP协议有所不同。在传统的HTTP协议中,客户端(如浏览器)需要主动向服务器发送请求获取数据,而服务器推送技术则允许...
服务器推送技术是网络应用中的一种优化策略,它允许服务器主动将数据发送到客户端,而不仅仅是响应客户端的请求。这种技术可以显著减少延迟,提高实时性,尤其适用于实时更新的应用,如股票报价、在线聊天或者游戏...
.NET 服务器推送是一种技术,允许Web服务器主动向客户端发送数据,而不仅仅是响应客户端的请求。在传统的HTTP协议中,客户端发起请求,服务器响应后连接即关闭。然而,服务器推送技术打破了这种模式,使得服务器能够...
本文将详细探讨如何通过JAVA实现多种服务器推送客户端的方式,包括Ajax轮询、长连接、长轮询以及Iframe刷新。 1. **Ajax轮询** Ajax轮询是最基础的实现方式,其原理是客户端定时发送Ajax请求到服务器,服务器接收...
这一过程涉及到的技术通常被称为“服务器推送通知”(Server-Side Push Notifications)。本文将深入探讨这个主题,包括其工作原理、常用的推送服务以及实现方法。 首先,理解服务器推送的基本概念是至关重要的。...
在iOS应用开发中,服务器推送是一项关键功能,它能让应用在后台状态下接收到来自服务器的通知,从而提升用户体验。本文将深入探讨iOS服务器推送的关键要点,包括Apple Push Notification Service(APNs)、推送通知...
Java向苹果服务器推送消息是iOS应用开发者经常遇到的需求,用于实时通知用户新的信息或系统状态。APNs(Apple Push Notification service)是苹果公司提供的推送服务,允许开发者将消息推送到用户的iOS设备上。本...
**百度推送服务器** 百度推送服务是一种高效、稳定的消息推送平台,它允许开发者向Android和iOS设备实时发送消息,提升用户互动性与应用活跃度。在Java环境下,开发人员可以利用百度提供的SDK方便地集成到自己的...
iOS推送服务器,也就是Apple Push Notification service (APNs),是苹果公司提供的一个服务,用于向运行iOS、iPadOS以及macOS操作系统的设备发送远程通知。下面我们将详细探讨iOS推送服务器的工作原理、实现流程及...
服务器推送技术,也称为Server Pushing,是一种网络通信模式,允许服务器主动向客户端发送数据,而无需客户端发起请求。这种技术在现代Web开发中扮演着重要角色,尤其在实时性需求较高的应用场景,如在线聊天、股票...
在提供的链接中,博客作者详细介绍了如何在ASP.NET环境中配置和使用SignalR,包括创建Hub、初始化客户端连接以及如何进行服务器推送。如果你想要进一步学习和实践SignalR,这个资源会是一个很好的起点。通过SignalR...
本文将详细介绍如何实现DWR的服务器推送功能。 一、DWR简介 DWR的核心功能是通过AJAX技术创建了一个JavaScript到Java的桥梁,使得开发者可以像操作本地对象一样操作远程服务器上的对象。它支持自动类型转换、错误...
服务器推送是一种技术,它允许服务器主动将数据发送到客户端,而不是等待客户端发起请求。这种技术在实时性要求较高的场景中非常有用,例如实时新闻更新、股票报价或在线游戏。在这个"服务器推送示例 - 支持IE、FF、...
5. **处理推送消息**: 在JavaScript事件处理器中,接收并处理由服务器推送过来的消息。可以更新DOM元素,显示新消息,或者执行其他客户端操作。 6. **优化性能和资源管理**: 为了防止过多的连接占用服务器资源,...
【ServerPush(服务器推送)】 在Web开发中,服务器推送(Server Push)是一种技术,它允许服务器主动将数据发送到客户端,而无需等待客户端的请求。这种机制打破了传统的HTTP协议的请求-响应模型,提高了实时性和...
【.NET 极光推送的服务器端推送全面Demo解析】 .NET平台上的极光推送(JPush)服务为开发者提供了一种高效、稳定的移动端消息推送解决方案。极光推送Demo旨在帮助开发者快速理解和应用服务器端推送技术,实现从...