CN113472846B - 消息处理方法、装置、设备和计算机可读存储介质 - Google Patents

消息处理方法、装置、设备和计算机可读存储介质 Download PDF

Info

Publication number
CN113472846B
CN113472846B CN202110591507.9A CN202110591507A CN113472846B CN 113472846 B CN113472846 B CN 113472846B CN 202110591507 A CN202110591507 A CN 202110591507A CN 113472846 B CN113472846 B CN 113472846B
Authority
CN
China
Prior art keywords
message
service
node maintenance
maintenance service
issued
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110591507.9A
Other languages
English (en)
Other versions
CN113472846A (zh
Inventor
郭双鹏
付岗
王胜凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Leshi Zhixin Electronic Technology Tianjin Co Ltd
Original Assignee
Leshi Zhixin Electronic Technology Tianjin Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Leshi Zhixin Electronic Technology Tianjin Co Ltd filed Critical Leshi Zhixin Electronic Technology Tianjin Co Ltd
Priority to CN202110591507.9A priority Critical patent/CN113472846B/zh
Publication of CN113472846A publication Critical patent/CN113472846A/zh
Application granted granted Critical
Publication of CN113472846B publication Critical patent/CN113472846B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开的实施例提供了消息处理方法、装置、设备和计算机可读存储介质。所述方法包括:所述接口服务接收消息下发请求;所述消息分发服务确定与所述消息下发请求对应的节点维护服务,并将所述消息下发请求中携带的待下发消息发送至所述节点维护服务;所述节点维护服务将所述待下发消息通过长连接下发至对应的目标客户端。以此方式,通过建立由接口服务、消息分发服务以及节点维护服务构成的消息下行通道,可利用长连接将接口服务接收到的待下发消息下发至对应的目标客户端,从而可满足消息下发实时性需求,避免需要客户端通过TCP短连接主动上行请求服务器下发消息而导致响应时间过长的问题。

Description

消息处理方法、装置、设备和计算机可读存储介质
技术领域
本公开的实施例一般涉及数据传输领域,并且更具体地,涉及消息处理方法、装置、设备和计算机可读存储介质。
背景技术
在当下万物互联时代,精细化运营越来越重要,为满足用户消息实时触达到用户的需求,亟需建立一条合适的消息下行通道。然而现有的消息传输通道存在如下问题:
需要客户端通过TCP(Transmission Control Protocol,传输控制协议)短连接主动上行请求服务器下发消息,如此,响应时间过长,无法满足消息下发实时性需求;
在消息下发通道与客户端之间采用TCP长连接的场景中,消息下发采用的通用数据结构主要是websocket数据结构,字段较多,可能有二十多个字段甚至更多,导致冗余数据太过庞大,消耗大量的带宽资源且无法保证响应时间;
信息采用map结构而导致服务承载量有限,无法满足不断扩充的市场需求。
发明内容
根据本公开的实施例,提供了一种消息处理方案。
在本公开的第一方面,提供了一种消息处理方法。该方法包括:
所述接口服务接收消息下发请求;
所述消息分发服务确定与所述消息下发请求对应的节点维护服务,并将所述消息下发请求中携带的待下发消息发送至所述节点维护服务;
所述节点维护服务将所述待下发消息通过长连接下发至对应的目标客户端。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述消息分发服务确定与所述消息下发请求对应节点维护服务,包括:
所述消息分发服务通过所述消息下发请求确定所述待下发消息的当前推送类型和所述目标客户端的标识信息;
所述消息分发服务根据所述当前推送类型和所述目标客户端的标识信息,从多个节点维护服务中选择所述对应的节点维护服务。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述消息分发服务根据所述当前推送类型和所述目标客户端的标识信息,从多个节点维护服务中选择所述对应的节点维护服务,包括:
所述消息分发服务获取推送类型、客户端标的识信息与节点维护服务之间的映射关系,并根据所述当前推送类型、所述目标客户端的标识信息以及所述映射关系,确定所述对应的节点维护服务。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法还包括:
所述目标客户端通过上行请求获得所述节点维护服务的节点信息,并与所述节点维护服务建立长连接;
所述节点维护服务与所述目标客户端通过发送心跳包维持所述长连接。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述节点维护服务将所述待下发消息通过长连接下发至对应的目标客户端,包括:
所述节点维护服务在接收到所述待下发消息后,从客户端基数树中定位出所述目标客户端的标识信息对应的会话控制标识;
所述节点维护服务通过所述会话控制标识将所述待下发消息下发至所述目标客户端。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述节点维护服务通过所述会话控制标识将所述待下发消息下发至所述目标客户端之前,
所述节点维护服务根据预设字段将所述待下发消息进行组装,其中,所述预设字段包括以下多项:
消息类型字段、签名标识字段、保留位字段、长度字段以及实际业务参数字段。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法还包括:
所述接口服务将所述待下发消息进行缓存,并将所述待下发消息的消息标识并行发送至所述消息分发服务;
所述将所述消息下发请求中携带的待下发消息发送至所述节点维护服务,包括:
所述消息分发服务根据所述消息标识从缓存中读取所述待下发消息,并在读取完成后,将所述待下发消息发送至所述节点维护服务。
在本公开的第二方面,提供了一种消息处理装置,用于服务器,所述服务器包括接口服务、消息分发服务以及节点维护服务,所述装置包括:
所述接口服务,用于接收消息下发请求;
所述消息分发服务,用于确定与所述消息下发请求对应的节点维护服务,并将所述消息下发请求中携带的待下发消息发送至所述节点维护服务;
所述节点维护服务,用于将所述待下发消息通过长连接下发至对应的目标客户端。
在本公开的第三方面,提供了一种电子设备。该电子设备包括:存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现如以上所述的方法。
在本公开的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如根据本公开的第一方面和/或第二发面的方法。
应当理解,发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1示出了根据本公开的实施例的消息处理方法的流程图;
图2示出了根据本公开的实施例的一种消息处理装置的方框图;
图3示出了根据本公开的实施例的一种消息下发服务系统的框架图;
图4示出了能够实施本公开的实施例的示例性电子设备的方框图;
图5示出了基数树存储方式与map存储方式的对比示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本公开保护的范围。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本公开中,通过建立由接口服务、消息分发服务以及节点维护服务构成的消息下行通道,可利用长连接将接口服务接收到的待下发消息下发至对应的目标客户端,从而可满足消息下发实时性需求,避免需要客户端通过TCP短连接主动上行请求服务器下发消息而导致响应时间过长的问题。
图1示出了根据本公开实施例的用于消息处理方法100的流程图。如图1所示,该消息处理方法100用于服务器,所述服务器包括接口服务、消息分发服务以及节点维护服务,而这些服务可以为服务器中的进程,每类数量并不限制是一个或多个,所述消息处理方法包括步骤110至步骤130:
在步骤110中,所述接口服务接收消息下发请求;
在步骤120中,所述消息分发服务确定与所述消息下发请求对应的节点维护服务,并将所述消息下发请求中携带的待下发消息发送至所述节点维护服务;
节点维护服务可以有多个,不同的节点维护服务可用于维护不同的客户端,且同一个节点维护服务可维护一个或多个客户端。
在步骤130中,所述节点维护服务将所述待下发消息通过长连接下发至对应的目标客户端。
通过建立由接口服务、消息分发服务以及节点维护服务构成的消息下行通道,可在接收消息下发请求先确定对应的节点维护服务,然后该对应的节点维护服务可利用长连接将待下发消息下发至对应的目标客户端,从而可满足消息下发实时性需求,避免需要客户端通过TCP短连接主动上行请求服务器下发消息而导致响应时间过长的问题。
同时,由于节点维护服务与消息下发请求相对应,因而,可满足不同的消息由不同的节点维护服务进行下发,如此,可将消息进行分类维护,以进一步提高消息下发效率。
在一个实施例中,所述消息分发服务确定与所述消息下发请求对应节点维护服务,包括:
所述消息分发服务通过所述消息下发请求确定消息的当前推送类型和所述目标客户端的标识信息;
消息的推送类型包括广播、组播、单点推送。目标客户端可以是一个客户端或者多个客户端。目标客户端的标识信息用于唯一标识该目标客户端,如目标客户端自身的编号、IP(Internet Protocol,网际互连协议)地址、MAC(Media Access Control Address)等唯一标识。
所述消息分发服务根据所述当前推送类型和所述目标客户端的标识信息,从多个节点维护服务中选择所述对应的节点维护服务。
消息分发服务通过确定该待下发消息的当前推送类型和目标客户端的标识信息,可从多个节点维护服务中准确地选择出匹配的节点维护服务,如此,既可保证节点维护服务将消息进行分类维护,又可避免节点维护服务查找错误,提高节点维护服务的查找效率和正确率。
在一个实施例中,所述消息分发服务根据所述当前推送类型和所述目标客户端的标识信息,从多个节点维护服务中选择所述对应的节点维护服务,包括:
所述消息分发服务获取推送类型、客户端标的识信息与节点维护服务之间的映射关系,并根据所述当前推送类型、所述目标客户端的标识信息以及所述映射关系,确定所述对应的节点维护服务。
在确定对应的节点维护服务时,可获取推送类型、标识信息以及节点维护服务这三者之间的映射关系,然后根据该待下发消息的当前推送类型、目标客户端的具体标识,即可准确无误地选择对应的节点维护服务。
在一个实施例中,所述方法还包括:
所述目标客户端通过上行请求获得所述节点维护服务的节点信息,并通过该节点维护服务的节点信息与所述节点维护服务建立长连接;
节点信息用于唯一标识该节点维护服务的信息,如该节点维护服务的名称等。
所述节点维护服务与所述目标客户端通过发送心跳包维持所述长连接。
节点维护服务与目标客户端之间发送心跳包的时间间隔可动态变化,主要依据客户端前序健康状态来动态调整下一跳间隔时间,而客户端前序健康状态主要依据客户端发送心跳包的上报时间、客户端需要的消息类型等来确定。
在一个实施例中,目标客户端的标识信息与其会话控制标识可通过基数树进行存储;所述节点维护服务将所述待下发消息通过长连接下发至对应的目标客户端,包括:
所述节点维护服务在接收到所述待下发消息后,从客户端基数树中定位出所述目标客户端的标识信息对应的会话控制标识;
所述节点维护服务通过所述会话控制标识将所述待下发消息下发至所述目标客户端。
所述节点维护服务在接收到所述待下发消息后,通过从客户端基数树中可快速定位出目标客户端的会话控制标识即session句柄,然后该节点维护服务即可通过该会话控制标识将所述待下发消息快速下发至所述目标客户端。而将目标客户端的标识信息与会话控制标识以基数树的形式进行存储相比于通过map结构的形式进行存储,可实现结构化存储session信息,提高服务单点承载量。
如图5所示,图5左侧为现有技术中的map存储方式,右侧为本公开的基数树存储方式,假设图5中字符均为客户端标识中的字符,如客户端1的标识为ABC,客户端2的标识为ABD,客户端3的标识为ACE,客户端4的标识为ACF,客户端5的标识为ADG,客户端6的标识为ADH,而Session1至Session6分别依次为客户端1至客户端6的会话控制标识,则如果将客户端的标识与对应的会话控制标识以如图5右侧所示的基数树方式,相比于以如图5左侧所示的map方式进行存储而言,显然需要存储的字符个数少,自然占用空间少,能存储的信息就更多,可有效提高服务单点承载量,也能提高会话控制标识的查找效率。
在一个实施例中,所述节点维护服务通过所述会话控制标识将所述待下发消息下发至所述目标客户端之前,
所述节点维护服务根据预设字段将所述待下发消息进行组装,其中,所述预设字段包括以下多项:
消息类型字段、签名标识字段、保留位字段、长度字段以及实际业务参数字段。消息类型可以是通知类型、命令类型、心跳类型、注册类型、初始化类型、状态标识类型、退出类型等。签名标识可用于指示是否需要对该待下发消息进行加密以及按照什么方式加密等。长度字段用于指示该消息的长度。实际业务参数字段用于指示该消息的具体值。保留位字段可根据需求自行定义。
节点维护服务同通过将待下发消息最多按照上述5个字段进行组装,相比于现有技术采用通用的websocket数据结构如二十多个字段进行存储而言,可减少冗余数据,减少带宽资源的消耗,有效保证响应时间。
在一个实施例中,所述方法还包括:
所述接口服务将所述待下发消息进行缓存,并将所述待下发消息的消息标识并行发送至所述消息分发服务;
所述将所述消息下发请求中携带的待下发消息发送至所述节点维护服务,包括:
所述消息分发服务根据所述消息标识从缓存中读取所述待下发消息,并在读取完成后,将所述待下发消息发送至所述节点维护服务。
接口服务先将待下发消息进行缓存,然后只是将消息标识并行发送至所述消息分发服务,可使得消息分发服务在空闲时根据所述消息标识从缓存中读取所述待下发消息,并在读取完成后,将所述待下发消息发送至所述节点维护服务,如此可有效提高消息在接口服务与消息分发服务之间的传输效率,进而提高服务的运行性能。
另外,在本公开中,服务器中还可以有Zookeeper服务,用于维护该服务器中的各类节点服务,当某类节点维护服务不足时,可自动增加该类节点维护服务的数量,如根据客户端的添加要求,增加节点维护服务的数量,然后只需要将所添加的节点服务的信息传给接口服务即可,从而在服务无状态化的情况下,可以方便地实现横向扩容。当然,Zookeeper服务还可删除服务器中的某类节点服务,或者减少某类节点服务的数量。
下面将结合其他实施例,进一步详细说明本公开的技术方案:
本公开实现了一种高效的服务端到客户端的下行通信技术,首先客户端通过上行请求获取节点信息,然后根据对应节点信息建立TCP长连接;
长连接保持期间,会通过智能心跳来进行双向在线确认,智能心跳是指服务会根据客户端前序健康状态来动态调整下一跳间隔时间;
当下发需求提交到服务端时,首先由接口服务写入队列通知到消息分发服务,经消息分发服务后会将消息需求提交到节点维护服务;
在节点维护服务中,系统会通过查询其维护的基数树来迅速定位到设备信息ID,并取到对应的session句柄(会话控制标识)。
在取到session句柄后,系统会按照以下协议组装数据并进行消息下发;
${type_u8}${flag_u8}${seq_u32}${len_u32}${ProtoBuf(data)_str},这相比于现有技术中通过采用通用的websocket数据结构而言,可避免冗余字段太多,其中:U8表示无符号数最多八位,U32表示无符号数最多32位,{type_u8}为消息类型字段,{flag_u8}为签名表示字段,{seq_u32}为保留位字段,{len_u32}为长度字段,{ProtoBuf(data)_str}为实际业务参数字段。
如图3所示,消息下发需求通过其他应用或者管理后台提交后,首先到达接口服务,接口服务将消息存储到缓存redis中后,将消息ID通过MQ同时并发至消息分发服务Dispatcher,消息分发服务Dispatcher接收到消息ID后把消息从redis取出来。
消息分发服务根据消息的推送类型(广播、组播、单点推送)和目标设备(接收端的标识/组标识)选择对应的节点维护服务,然后通过远程调用触发对应的消息下发。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本公开并不受所描述的动作顺序的限制,因为依据本公开,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本公开所必须的。
以上是关于方法实施例的介绍,以下通过装置实施例,对本公开所述方案进行进一步说明。
图2示出了根据本公开的实施例的消息处理装置200的方框图。如图2所示,装置200包括:
所述接口服务210,用于接收消息下发请求;
所述消息分发服务220,用于确定与所述消息下发请求对应的节点维护服务,并将所述消息下发请求中携带的待下发消息发送至所述节点维护服务;
所述节点维护服务230,用于将所述待下发消息通过长连接下发至对应的目标客户端。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,所述描述的模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图4示出了可以用来实施本公开的实施例的电子设备400的示意性框图。设备400可以用于实现图2的消息处理装置200和消息下发服务系统300中的至少一个。如图所示,设备400包括CPU401,其可以根据存储在ROM402中的计算机程序指令或者从存储单元408加载到RAM403中的计算机程序指令,来执行各种适当的动作和处理。在RAM 403中,还可以存储设备400操作所需的各种程序和数据。CPU 401、ROM 402以及RAM 403通过总线404彼此相连。I/O接口405也连接至总线404。
设备400中的多个部件连接至I/O接口405,包括:输入单元406,例如键盘、鼠标等;输出单元407,例如各种类型的显示器、扬声器等;存储单元408,例如磁盘、光盘等;以及通信单元409,例如网卡、调制解调器、无线通信收发机等。通信单元409允许设备400通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理单元401执行上文所描述的各个方法和处理,例如方法100。例如,在一些实施例中,方法100可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元408。在一些实施例中,计算机程序的部分或者全部可以经由ROM 402和/或通信单元409而被载入和/或安装到设备400上。当计算机程序加载到RAM 403并由CPU 401执行时,可以执行上文描述的方法100的一个或多个步骤。备选地,在其他实施例中,CPU 401可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法100。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)等等。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、RAM、ROM、EPROM、光纤、CD-ROM、光学储存设备、磁储存设备、或上述内容的任何合适组合。
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (8)

1.一种消息处理方法,用于服务器,所述服务器包括接口服务、消息分发服务以及节点维护服务,其特征在于,包括:
所述接口服务接收消息下发请求;
所述消息分发服务确定与所述消息下发请求对应的节点维护服务,并将所述消息下发请求中携带的待下发消息发送至所述节点维护服务;其中,所述消息分发服务确定与所述消息下发请求对应节点维护服务,包括:所述消息分发服务通过所述消息下发请求确定所述待下发消息的当前推送类型和目标客户端的标识信息;所述消息分发服务根据所述当前推送类型和所述目标客户端的标识信息,从多个节点维护服务中选择所述对应的节点维护服务;
所述节点维护服务在接收到所述待下发消息后,从客户端基数树中定位出所述目标客户端的标识信息对应的会话控制标识;
所述节点维护服务通过所述会话控制标识将所述待下发消息下发至所述目标客户端,其中,所述会话控制标识为session句柄,所述目标客户端的标识信息与所述会话控制标识以基数树的形式进行存储。
2.根据权利要求1所述的方法,其特征在于,
所述消息分发服务根据所述当前推送类型和所述目标客户端的标识信息,从多个节点维护服务中选择所述对应的节点维护服务,包括:
所述消息分发服务获取推送类型、客户端标的识信息与节点维护服务之间的映射关系,并根据所述当前推送类型、所述目标客户端的标识信息以及所述映射关系,确定所述对应的节点维护服务。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述目标客户端通过上行请求获得所述节点维护服务的节点信息,并与所述节点维护服务建立长连接;
所述节点维护服务与所述目标客户端通过发送心跳包维持所述长连接。
4.根据权利要求1所述的方法,其特征在于,
所述节点维护服务通过所述会话控制标识将所述待下发消息下发至所述目标客户端之前,
所述节点维护服务根据预设字段将所述待下发消息进行组装,其中,所述预设字段包括以下多项:
消息类型字段、签名标识字段、保留位字段、长度字段以及实际业务参数字段。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
所述接口服务将所述待下发消息进行缓存,并将所述待下发消息的消息标识并行发送至所述消息分发服务;
所述将所述消息下发请求中携带的待下发消息发送至所述节点维护服务,包括:
所述消息分发服务根据所述消息标识从缓存中读取所述待下发消息,并在读取完成后,将所述待下发消息发送至所述节点维护服务。
6.一种消息处理装置,用于服务器,所述服务器包括接口服务、消息分发服务以及节点维护服务,其特征在于,包括:
所述接口服务,用于接收消息下发请求;
所述消息分发服务,用于确定与所述消息下发请求对应的节点维护服务,并将所述消息下发请求中携带的待下发消息发送至所述节点维护服务;其中,所述消息分发服务确定与所述消息下发请求对应节点维护服务,包括:所述消息分发服务通过所述消息下发请求确定所述待下发消息的当前推送类型和目标客户端的标识信息;所述消息分发服务根据所述当前推送类型和所述目标客户端的标识信息,从多个节点维护服务中选择所述对应的节点维护服务;所述节点维护服务,用于在接收到所述待下发消息后,从客户端基数树中定位出所述目标客户端的标识信息对应的会话控制标识;
所述节点维护服务通过所述会话控制标识将所述待下发消息下发至所述目标客户端,其中,所述会话控制标识为session句柄,所述目标客户端的标识信息与所述会话控制标识以基数树的形式进行存储。
7.一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1~5中任一项所述的方法。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1~5中任一项所述的方法。
CN202110591507.9A 2021-05-28 2021-05-28 消息处理方法、装置、设备和计算机可读存储介质 Active CN113472846B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110591507.9A CN113472846B (zh) 2021-05-28 2021-05-28 消息处理方法、装置、设备和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110591507.9A CN113472846B (zh) 2021-05-28 2021-05-28 消息处理方法、装置、设备和计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN113472846A CN113472846A (zh) 2021-10-01
CN113472846B true CN113472846B (zh) 2023-04-28

Family

ID=77871671

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110591507.9A Active CN113472846B (zh) 2021-05-28 2021-05-28 消息处理方法、装置、设备和计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN113472846B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113923249A (zh) * 2021-10-12 2022-01-11 工银科技有限公司 一种高性能网络长连接建立方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209490A (zh) * 2015-05-25 2016-12-07 丛林网络公司 选择和监控多个服务关键性能指标的方法和系统
CN110633442A (zh) * 2019-08-19 2019-12-31 阿里巴巴集团控股有限公司 一种推送方法、装置及电子设备
CN110932924A (zh) * 2019-10-28 2020-03-27 深圳市钱海网络技术有限公司 一种用于app与服务器进行通信的消息推送方法及装置
CN112511628A (zh) * 2020-11-30 2021-03-16 银盛支付服务股份有限公司 一种分布式实时消息推送方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106209490A (zh) * 2015-05-25 2016-12-07 丛林网络公司 选择和监控多个服务关键性能指标的方法和系统
CN110633442A (zh) * 2019-08-19 2019-12-31 阿里巴巴集团控股有限公司 一种推送方法、装置及电子设备
CN110932924A (zh) * 2019-10-28 2020-03-27 深圳市钱海网络技术有限公司 一种用于app与服务器进行通信的消息推送方法及装置
CN112511628A (zh) * 2020-11-30 2021-03-16 银盛支付服务股份有限公司 一种分布式实时消息推送方法

Also Published As

Publication number Publication date
CN113472846A (zh) 2021-10-01

Similar Documents

Publication Publication Date Title
CN105915633B (zh) 自动化运维系统和方法
CN106549878B (zh) 一种业务分流方法和装置
US9537786B2 (en) Method, device, and system for information processing based on distributed buses
WO2017181890A1 (zh) 基于服务器集群的数据处理系统及方法
CN110430274A (zh) 一种基于云存储的文件下载方法及系统
CN110381162A (zh) 一种业务处理的方法以及相关装置
US9104488B2 (en) Support server for redirecting task results to a wake-up server
US20230161541A1 (en) Screen projection method and system
CN104243610A (zh) 一种分布式文件传输服务方法
CN111917562A (zh) 广播消息转发方法、装置、设备及存储介质
CN113472846B (zh) 消息处理方法、装置、设备和计算机可读存储介质
CN112532673A (zh) 消息发送方法及装置、计算机可读存储介质、电子设备
CN114500633B (zh) 数据转发方法、相关装置、程序产品及数据传输系统
CN106411713B (zh) 一种状态通知方法及服务器
CN114567519A (zh) 一种多线程并行管理多个智能设备指令消息的方法及装置
CN112104679B (zh) 处理超文本传输协议请求的方法、装置、设备和介质
US10268532B2 (en) Application message processing system, method, and application device
CN110839061B (zh) 数据分发方法、装置及存储介质
CN112019650A (zh) Ip地址推荐方法、装置及服务器
CN113949417B (zh) 一种基于混合通信的电网数据传输方法及装置
CN112511440B (zh) 报文转发方法、系统、存储介质和电子设备
CN111724262B (zh) 一种应用服务器后续包查询系统及其工作方法
WO2018090315A1 (zh) 数据请求的处理方法及缓存系统
CN114489730A (zh) 一种远程升级方法及其终端设备、计算机可读存储介质
WO2017165999A1 (zh) 网络服务实现方法、服务控制器及通信系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Guo Shuangpeng

Inventor after: Fu Gang

Inventor after: Wang Shengkai

Inventor before: Guo Shuangpeng

Inventor before: Fu Gang

Inventor before: Wang Hongguang

GR01 Patent grant
GR01 Patent grant