一种无业务数据交换下保持websocket长连接的方法与流程

文档序号:18298161发布日期:2019-07-31 09:41阅读:653来源:国知局
一种无业务数据交换下保持websocket长连接的方法与流程

本发明涉及连接技术领域,尤其涉及一种无业务数据交换下保持websocket长连接的方法。



背景技术:

websocket长连接虽然解决了服务器和客户端两边的问题,但是网络应用除了服务器和客户端之外,另一个巨大的存在是中间的网络链路。一个http/websocket连接往往要经过无数的路由,防火墙。这些中间节点可能会认为一份连接在一段时间内没有数据发送就等于失效,它们会自动的切断这些连接。在这种情况下,不论服务器还是客户端都不会收到任何提示,从而使长连接陷入假死状态。



技术实现要素:

本发明的目的在于提供一种无业务数据交换下保持websocket长连接的方法,主要解决在websocket长连接一段时间后如果没有数据交换会被切断的问题。

为达此目的,本发明采用以下技术方案:

一种无业务数据交换下保持websocket长连接的方法,提供一请求端与响应端,请求端向响应端发送信息,所述信息包括数据信息和系统命令信息;

在请求端与响应端进行websocket长连接时,请求端间隔预设时间后向响应端发送系统命令信息;

响应端接收到所述信息后,响应端解析所述信息;

响应端判断所述信息是否为系统命令信息,若是,则响应端向请求端发送反馈信息。

可选的,所述系统命令信息为单字节信息。

可选的,所述反馈信息为单字节信息。

可选的,所述步骤:在请求端与响应端进行websocket长连接时,请求端间隔预设时间后向响应端发送系统命令信息,具体为:

在请求端与响应端进行websocket长连接时,请求端间隔预设时间后发送系统命令信息至内外网交换平台,内外网交换平台将所述系统命令信息发送至响应端。

可选的,本发明的方法还包括:提供一日志模块,日志模块记录请求端与响应端的信息传递的内容。

与现有技术相比,本发明实施例具有以下有益效果:

本发明通过定时向响应端发送系统命令信息,响应端接收到系统命令信息后向请求端发送反馈信息,从而形成闭环的消息交换过程,以能够在网络环境有超时限制时,在不修改网络配置策略的情况下,实现了websocket长连接能够保持且有效。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。

图1为本发明实施例提供的一种无业务数据交换下保持websocket长连接的方法的流程图。

具体实施方式

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。

请参考图1,一种无业务数据交换下保持websocket长连接的方法,包括包括请求端与响应端,请求端可向响应端发送信息,其中,请求端向响应端发送的信息包括数据信息和系统命令信息;数据信息为请求端与响应端正常数据交换的信息,系统命令信息为请求端为了保持与响应端连接的系统命令的信息。

进一步的,系统命令信息为单字节信息,以避免数据量传输过大对服务器造成压力。

步骤s101:在请求端与响应端进行websocket长连接时,请求端间隔预设时间后向响应端发送系统命令信息;具体的,在请求端与响应端进行websocket长连接时,请求端间隔预设时间后发送系统命令信息至内外网交换平台,内外网交换平台将所述系统命令信息发送至响应端。

进一步的,本实施例中预设时间选用5秒/次。

步骤s102:响应端接收到信息后,响应端解析请求端发送的信息。

步骤s103:响应端判断信息是否为系统命令信息;若是,则执行步骤s105,若否,则按数据信息的内容执行响应的操作。

步骤s104:响应端向请求端发送反馈信息,其中,反馈信息为单字节信息。

本发明的方法还包括:提供一日志模块,日志模块记录请求端与响应端的信息传递的内容,以方便生产环境下的日志查询,故障排查。

本实施例提供的一种无业务数据交换下保持websocket长连接的方法,通过定时向响应端发送系统命令信息,响应端接收到系统命令信息后向请求端发送反馈信息,从而形成闭环的消息交换过程,以能够在网络环境有超时限制时,在不修改网络配置策略的情况下,实现了websocket长连接能够保持且有效;同时,通过使用单字节的信息传递减小了服务器的压力。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。



技术特征:

技术总结
本发明公开了一种无业务数据交换下保持websocket长连接的方法,包括如下步骤:在请求端与响应端进行websocket长连接时,请求端间隔预设时间后向响应端发送系统命令信息;响应端接收到所述信息后,响应端解析所述信息;响应端判断所述信息是否为系统命令信息,若是,则响应端向请求端发送反馈信息;通过定时向响应端发送系统命令信息,响应端接收到系统命令信息后向请求端发送反馈信息,从而形成闭环的消息交换过程,以能够在网络环境有超时限制时,在不修改网络配置策略的情况下,实现了websocket长连接能够保持且有效。

技术研发人员:苏立伟;覃浩;龙震岳;尚艳伟;乔麟;王国瑞;陈海燕;刘振华;陈敏;梁瑞莹;伊思诺;苏春明
受保护的技术使用者:广东电网有限责任公司;广东电网有限责任公司客户服务中心
技术研发日:2019.04.30
技术公布日:2019.07.30
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1