客户端与服务端长连接交互方法及装置制造方法及图纸

技术编号:21095996 阅读:41 留言:0更新日期:2019-05-11 12:27
本公开实施例中提供了一种客户端与服务端长连接交互方法、装置及电子设备,属于数据处理技术领域,该方法包括:基于主交互界面上优先级最高的自选列表内的代码信息,向服务端发送长连接请求;基于服务端发送的响应,建立所述自选列表与所述服务端之间的第一长连接,基于所述第一长连接,客户端持续的接收来自服务端发送的针对所述自选列表的数据;监控所述自选列表中的任一组成元素的详情页是否被打开;若是,则在断开所述第一长连接的同时,为所述详情页建立第二长连接。通过本公开的方案,在保证通信性能的同时,降低了对于服务端资源的消耗。

【技术实现步骤摘要】
客户端与服务端长连接交互方法及装置
本公开涉及数据处理
,尤其涉及一种客户端与服务端长连接交互方法、装置及电子设备。
技术介绍
长连接是客户端与服务器通信的一种重要的连接方式,长连接的本质在于客户端与服务端的接口交互,接口与长连接的关系可以划分为1:1、N:1和N:M三种。websocket的协议规范中规定了websocket连接建立基于http的升级,经过升级之后客户端和服务端维护一条持久化连接用于通信。自然而然,最简单的一种方式就是单API单连接,这种模式与请求-回复模型完全一致,客户端的每次请求都会为之分配一个长连接,一旦失去心跳或者客户端主动退出连接断开。现有技术中,服务端保持的连接数量会随API呈线性增长,这对服务端CPU和内存资源会是一种浪费,客户端也会维护多个长连接用于不同端口通信,会使客户端非常耗电,造成了资源的浪费。为此,亟需一种全新的客户端与服务端长连接交互解决方案。
技术实现思路
有鉴于此,本公开实施例提供一种客户端与服务端长连接交互方法、装置及电子设备,至少部分解决现有技术中存在的问题。第一方面,本公开实施例提供了一种客户端与服务端长连接交互方法,应用于客户端,包括:基于主交互界面上优先级最高的自选列表内的代码信息,向服务端发送长连接请求;基于服务端发送的响应,建立所述自选列表与所述服务端之间的第一长连接,基于所述第一长连接,客户端持续的接收来自服务端发送的针对所述自选列表的数据;监控所述自选列表中的任一组成元素的详情页是否被打开;若是,则在断开所述第一长连接的同时,为所述详情页建立第二长连接。根据本公开实施例的一种具体实现方式,所述方法还包括:获取当前用户的用户类型;当所述用户类型为预设用户类型时,进一步查看当前界面是否存在与所述预设用户类型对应的预设数据展示区域;若存在,则针对所述预设数据展示区域建立第三长连接,同时断开处于连接状态的第一长连接或第二长连接。根据本公开实施例的一种具体实现方式,所述针对所述预设数据建立第三长连接,包括:基于所述第三长连接,在所述预设数据展示区域展示第一预设数据。根据本公开实施例的一种具体实现方式,所述针对所述预设数据建立第三长连接,还包括:判断所述第一预设数据的传输是否存在异常;若存在,则在所述预设数据展示区域展示第二预设数据。根据本公开实施例的一种具体实现方式,所述为所述详情页建立第二长连接,包括:为所述第二长连接建立数据结构体,基于所述数据结构体进行数据传输。根据本公开实施例的一种具体实现方式,其特征在于:所述数据结构体包括命令字段,基于所述命令字段确定第二长连接的数据交互指令。根据本公开实施例的一种具体实现方式,其特征在于:所述数据结构体包括主体字段,所述主体字段中包含JSON协议类型的原始消息,通过反解JSON协议获取与所述第二长连接相关的上行命令参数。根据本公开实施例的一种具体实现方式,所述第一长连接、第二长连接、第三长连接的连接类型为websocket长连接。第二方面,本公开实施例提供了一种客户端与服务端长连接交互装置,包括:连接模块,用于基于主交互界面上优先级最高的自选列表内的代码信息,向服务端发送长连接请求;第一建立模块,用于基于服务端发送的响应,建立所述自选列表与所述服务端之间的第一长连接,基于所述第一长连接,客户端持续的接收来自服务端发送的针对所述自选列表的数据;监控模块,用于监控所述自选列表中的任一组成元素的详情页是否被打开;第二建立模块,用于在所述自选列表中的任一组成元素的详情页被打开时,在断开所述第一长连接的同时,为所述详情页建立第二长连接。第三方面,本公开实施例还提供了一种电子设备,该电子设备包括:至少一个处理器;以及,与该至少一个处理器通信连接的存储器;其中,该存储器存储有可被该至少一个处理器执行的指令,该指令被该至少一个处理器执行,以使该至少一个处理器能够执行前述任第一方面或第一方面的任一实现方式中的客户端与服务端长连接交互方法。第四方面,本公开实施例还提供了一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使该计算机执行前述第一方面或第一方面的任一实现方式中的客户端与服务端长连接交互方法。第五方面,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括存储在非暂态计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行前述第一方面或第一方面的任一实现方式中的客户端与服务端长连接交互方法。本公开实施例中的客户端与服务端长连接交互方案,包括基于主交互界面上优先级最高的自选列表内的代码信息,向服务端发送长连接请求;基于服务端发送的响应,建立所述自选列表与所述服务端之间的第一长连接,基于所述第一长连接,客户端持续的接收来自服务端发送的针对所述自选列表的数据;监控所述自选列表中的任一组成元素的详情页是否被打开;若是,则在断开所述第一长连接的同时,为所述详情页建立第二长连接。通过本公开的方案,在保证通信性能的同时,降低了对于服务端资源的消耗。附图说明为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为本公开实施例提供的一种客户端与服务端长连接交互流程示意图;图2为本公开实施例提供的另一种客户端与服务端长连接交互流程示意图;图3为本公开实施例提供的另一种客户端与服务端长连接交互流程示意图;图4为本公开实施例提供的客户端与服务端长连接交互装置结构示意图;图5为本公开实施例提供的电子设备示意图。具体实施方式下面结合附图对本公开实施例进行详细描述。以下通过特定的具体实例说明本公开的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本公开的其他优点与功效。显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。本公开还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本公开的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本公开的基本构想,图式中仅显示与本公开中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复本文档来自技高网...

【技术保护点】
1.一种客户端与服务端长连接交互方法,应用于客户端,其特征在于,包括:基于主交互界面上优先级最高的自选列表内的代码信息,向服务端发送长连接请求;基于服务端发送的响应,建立所述自选列表与所述服务端之间的第一长连接,基于所述第一长连接,客户端持续的接收来自服务端发送的针对所述自选列表的数据;监控所述自选列表中的任一组成元素的详情页是否被打开;若是,则在断开所述第一长连接的同时,为所述详情页建立第二长连接。

【技术特征摘要】
1.一种客户端与服务端长连接交互方法,应用于客户端,其特征在于,包括:基于主交互界面上优先级最高的自选列表内的代码信息,向服务端发送长连接请求;基于服务端发送的响应,建立所述自选列表与所述服务端之间的第一长连接,基于所述第一长连接,客户端持续的接收来自服务端发送的针对所述自选列表的数据;监控所述自选列表中的任一组成元素的详情页是否被打开;若是,则在断开所述第一长连接的同时,为所述详情页建立第二长连接。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取当前用户的用户类型;当所述用户类型为预设用户类型时,进一步查看当前界面是否存在与所述预设用户类型对应的预设数据展示区域;若存在,则针对所述预设数据展示区域建立第三长连接,同时断开处于连接状态的第一长连接或第二长连接。3.根据权利要求2所述的方法,其特征在于,所述针对所述预设数据建立第三长连接,包括:基于所述第三长连接,在所述预设数据展示区域展示第一预设数据。4.根据权利要求3所述的方法,其特征在于,所述针对所述预设数据建立第三长连接,还包括:判断所述第一预设数据的传输是否存在异常;若存在,则在所述预设数据展示区域展示第二预设数据。5.根据权利要求1所述的方法,其特征在于,所述为所述详情页建立第二长连接,包括:为所述第二长连接建立数据结构体,基于所述数据结构体进行数据传输。6.根据权利要求5所述...

【专利技术属性】
技术研发人员:宋增宽吴英强
申请(专利权)人:北京字节跳动网络技术有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1