本发明专利技术公开了一种客户端和服务端进行通信的方法及装置,包括:客户端向服务端发送全双工连接请求;所述服务端对接收到的所述全双工连接请求进行验证;验证成功后将验证结果发送至所述客户端,在所述客户端以及所述服务端之间建立全双工连接;当所述服务端信息更新时,在建立的所述全双工连接上主动将更新的信息推送到所述客户端,所述服务端在推送过程中可同时接收来自所述客户端的消息。本发明专利技术通过在服务端和客户端建立全双工模式的连接,服务端更新的信息无需客户端再发送轮询信息,就能够通过该连接主动迅速地推送到客户端,减少了网络延迟和网络资源的消耗,保证了客户端数据的有效性。
【技术实现步骤摘要】
本专利技术涉及网络应用
,特别是涉及一种客户端和服务端进行通信的方法及装置。
技术介绍
在进行Web应用开发时,服务端的信息需要迅速实时地被客户端获取,现有的客户端获取服务端信息的模式主要有以下几种:轮询、HTTP长连接或者在客户端安装插件。使用轮询的方式需要浏览器不断向服务器发送请求,而每次发送的HTTP请求都包含着完整的HTTP头信息和一次TCP连接的建立,客户端和服务器对于频繁的发送请求和返回响应都有一定的性能消耗,将会占用很多带宽和服务器资源。当连接到同一个服务器上的客户端数量较多时,将会大大增加服务器的负担。采用HTTP长连接让服务器端以一种非常缓慢的方式来推送数据,虽然与轮询的方法相比有了一定的改进,但这是一种半双工的连接方式,服务器推送一批数据时不能及时地将收到的新信息也一并推送,且服务器每次推送完毕,客户端还得重新建立一次连接。因此在推送的过程中就会造成大量的冗余信息,增加网络的负担,从而导致客户端数据延迟。而在客户端安装插件进行消息推送的方法不利于维护,而且还有可能因为客户端的缓存原因导致页面上显示一些过时的信息。鉴于此,提供一种客户端和服务端进行通信的方法及装置是非常有必要的。
技术实现思路
本专利技术的目的是提供一种客户端和服务端进行通信的方法及装置,以减少网络负载以及网络延迟,保证客户端能够及时获取最有效的数据。为解决上述技术问题,本专利技术提供一种客户端和服务端进行通信的方法,包括:客户端向服务端发送全双工连接请求;所述服务端对接收到的所述全双工连接请求进行验证;验证成功后将验证结果发送至所述客户端,在所述客户端以及所述服务端之间建立全双工连接;当所述服务端信息更新时,在建立的所述全双工连接上主动将更新的信息推送到所述客户端,所述服务端在推送过程中可同时接收来自所述客户端的消息。可选地,所述客户端向服务端发送全双工连接请求包括:在建立TCP连接后,所述客户端向所述服务端发送包含全双工连接请求的报文。可选地,所述验证成功后将验证结果发送至所述客户端,在所述客户端以及所述服务端之间建立全双工连接包括:验证成功后,将所述验证结果包含在应答报文中回复至所述客户端,在所述客户端以及所述服务端之间建立全双工连接。可选地,所述当所述服务端信息更新时,在建立的所述全双工连接上主动将更新的信息推送到所述客户端包括:当所述服务端在第一次数据更新未完毕,而数据进行第二次更新时,所述服务端可直接对第二次更新的数据进行发送。本专利技术还提供了一种客户端和服务端进行通信的装置,包括:请求模块,用于向服务端发送全双工连接请求;验证模块,用于对接收到的所述全双工连接请求进行验证;建立模块,用于验证成功后将验证结果发送至所述客户端,在所述客户端以及所述服务端之间建立全双工连接;发送模块,用于当所述服务端信息更新时,在建立的所述全双工连接上主动将更新的信息推送到所述客户端,所述服务端在推送过程中可同时接收来自所述客户端的消息。可选地,所述请求模块具体用于:在建立TCP连接后,向所述服务端发送包含全双工连接请求的报文。可选地,所述建立模块具体用于:验证成功后,将所述验证结果包含在应答报文中回复至所述客户端,在所述客户端以及所述服务端之间建立全双工连接。可选地,所述发送模块具体用于:当所述服务端在第一次数据更新未完毕,而数据进行第二次更新时,所述服务端可直接对第二次更新的数据进行发送。本专利技术所提供的客户端和服务端进行通信的方法及装置,客户端向服务端发送全双工连接请求;服务端对接收到的全双工连接请求进行验证后,将验证结果发送至客户端,从而建立全双工连接;这样当服务端信息更新时,可以在全双工连接上主动将更新的信息推送到客户端,且在推送过程中可同时接收来自所述客户端的消息。可见,本专利技术通过在服务端和客户端建立全双工模式的连接,服务端更新的信息无需客户端再发送轮询信息,就能够通过该连接主动迅速地推送到客户端,减少了网络延迟和网络资源的消耗,保证了客户端数据的有效性。【附图说明】图1为本专利技术所提供的客户端和服务端进行通信的方法的一种【具体实施方式】的流程图;图2为本专利技术所提供的客户端和服务端进行通信的方法的另一种【具体实施方式】的流程图;图3为全双工连接的建立的过程示意图;图4为全双工连接下服务端同时推送和接收消息的过程示意图;图5为全双工连接下服务端实时推送数据更新到客户端的过程示意图;图6为本专利技术所提供的客户端和服务端进行通信的装置的一种【具体实施方式】的结构框图。【具体实施方式】传统客户端和服务端进行信息传递的方式是半双工、客户端请求、服务端响应的模式,这种模式下双方的连接会造成大量的网络资源浪费,而且客户端数据无法保证其实时性以及有效性。鉴于此,本专利技术的核心是提供一种客户端和服务端进行通信的方法及装置。为了使本
的人员更好地理解本专利技术方案,下面结合附图和【具体实施方式】对本专利技术作进一步的详细说明。显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术所提供的客户端和服务端进行通信的方法的一种【具体实施方式】的流程图如图1所示,该方法包括:步骤SlOl:客户端向服务端发送全双工连接请求;步骤S102:所述服务端对接收到的所述全双工连接请求进行验证;步骤S103:验证成功后将验证结果发送至所述客户端,在所述客户端以及所述服务端之间建立全双工连接;步骤S104:当所述服务端信息更新时,在建立的所述全双工连接上主动将更新的信息推送到所述客户端,所述服务端在推送过程中可同时接收来自所述客户端的消息。本专利技术所提供的客户端和服务端进行通信的方法,客户端向服务端发送全双工连接请求;服务端对接收到的全双工连接请求进行验证后,将验证结果发送至客户端,从而建立全双工连接;这样当服务端信息更新时,可以在全双工连接上主动将更新的信息推送到客户端,且在推送过程中可同时接收来自所述客户端的消息。可见,本专利技术通过在服务端和客户端建立全双工模式的连接,服务端更新的信息无需客户端再发送轮询信息,就能够通过该连接主动迅速地推送到客户端,减少了网络延迟和网络资源的消耗,保证了客户端数据的有效性。本专利技术所提供的客户端和服务端进行通信的方法的另一种【具体实施方式】的流程图如图2所示,该方法包括:步骤S201:客户端和服务端在建立TCP连接后,客户端向服务端发送包含全双工连接请求的报文;[00当前第1页1 2 本文档来自技高网...
【技术保护点】
一种客户端和服务端进行通信的方法,其特征在于,包括:客户端向服务端发送全双工连接请求;所述服务端对接收到的所述全双工连接请求进行验证;验证成功后将验证结果发送至所述客户端,在所述客户端以及所述服务端之间建立全双工连接;当所述服务端信息更新时,在建立的所述全双工连接上主动将更新的信息推送到所述客户端,所述服务端在推送过程中可同时接收来自所述客户端的消息。
【技术特征摘要】
【专利技术属性】
技术研发人员:李娟,袁鹏飞,
申请(专利权)人:浪潮北京电子信息产业有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。