即时通信消息的处理方法、装置、设备、介质及程序产品制造方法及图纸

技术编号:39328136 阅读:10 留言:0更新日期:2023-11-12 16:05
本申请提供了一种即时通信消息的处理方法、装置、设备、介质及程序产品;方法包括:接收发送方客户端发送的消息请求,并根据消息请求确定即时通信消息的类型;响应于即时通信消息的类型为通知消息,且从令牌桶中获取到表征发送即时通信消息的权限的令牌,将即时通信消息转发至每个频道中的客户端;响应于即时通信消息的类型为频道消息,将即时通信消息存储至消息队列中,并向发送方客户端发送回包消息,以使发送方客户端预表现即时通信消息,以及按照存储时间先后顺序,将消息队列中的即时通信消息发送至与发送方客户端处于相同频道的其他客户端。通过本申请,能够有效减轻服务器负载压力,保证即时通信消息的可用性。保证即时通信消息的可用性。保证即时通信消息的可用性。

【技术实现步骤摘要】
即时通信消息的处理方法、装置、设备、介质及程序产品


[0001]本申请涉及互联网
,尤其涉及一种即时通信消息的处理方法、装置、设备、存储介质及程序产品。

技术介绍

[0002]随着互联网技术的快速发展,基于各类智能移动终端平台运行的即时通信程序越来越多的被人们应用于社交,这些即时通信程序支持通过网络快速发送免费语音、视频、图片和文字等形式的即时通信消息,使人们的社交活动更加方便快捷。
[0003]在相关技术中,通常是通过服务器将发送发客户端发送的即时通信消息直接转发至接收方客户端,那么,当数量庞大的发送方客户端同时向服务器发送即时通信消息时,由于服务器的承载能力有限,会导致服务器的压力瞬间陡增,引起服务器性能过载,导致服务器无法正常提供服务。
[0004]对于如何有效减轻服务器负载压力,保证即时通信消息的可用性,相关技术中尚无有效解决方案。

技术实现思路

[0005]本申请实施例提供一种即时通信消息的处理方法、装置及计算机可读存储介质,能够有效减轻服务器负载压力,保证即时通信消息的可用性。
[0006]本申请实施例的技术方案是这样实现的:
[0007]本申请实施例提供一种即时通信消息的处理方法,包括:
[0008]接收发送方客户端发送的消息请求,并根据消息请求确定即时通信消息的类型;
[0009]响应于即时通信消息的类型为通知消息,且从令牌桶中获取到表征发送即时通信消息的权限的令牌,将即时通信消息转发至每个频道中的客户端;
[0010]响应于即时通信消息的类型为频道消息,将即时通信消息存储至消息队列中,并向发送方客户端发送回包消息,以使发送方客户端预表现即时通信消息,以及
[0011]按照存储时间先后顺序,将消息队列中的即时通信消息发送至与发送方客户端处于相同频道的其他客户端。
[0012]本申请实施例提供一种即时通信消息的处理装置,包括:
[0013]接收模块,用于接收发送方客户端发送的消息请求,并根据所述消息请求确定所述即时通信消息的类型;
[0014]第一响应模块,用于响应于所述即时通信消息的类型为通知消息,且从令牌桶中获取到表征发送所述即时通信消息的权限的令牌,将所述即时通信消息转发至每个频道中的客户端;
[0015]第二响应模块,用于响应于所述即时通信消息的类型为频道消息,将所述即时通信消息存储至消息队列中,并向所述发送方客户端发送回包消息,以使所述发送方客户端预表现所述即时通信消息,以及
[0016]按照存储时间先后顺序,将所述消息队列中的所述即时通信消息发送至与所述发送方客户端处于相同频道的其他客户端。
[0017]本申请实施例提供一种电子设备,包括:
[0018]存储器,用于存储可执行指令;
[0019]处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的即时通信消息的处理方法。
[0020]本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的即时通信消息的处理方法。
[0021]本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行本申请实施例上述的即时通信消息的处理方法。
[0022]本申请实施例具有以下有益效果:
[0023]通过确定所请求的即时通信消息的类型,当即时通信消息的类型为通知消息时,通过令牌桶中表征发送即时通信消息的权限的令牌,控制即时通信消息的发送时机,当大量请求即时通信消息时,则无法从令牌桶中获取到令牌,那么就延迟即时通信消息的发送,从而实现了对即时通信消息的削峰。当即时通信消息的类型为频道消息时,通过消息队列暂存即时通信消息,从而实现了即时通信消息的限流。如此,通过对不同类型的即时通信消息进行削峰或限流,从而能够有效减轻服务器负载压力,保证即时通信消息的可用性。
附图说明
[0024]图1是本申请实施例提供的即时通信消息的处理系统架构的结构示意图;
[0025]图2是本申请实施例提供的即时通信消息的处理装置的结构示意图;
[0026]图3A至图3H是本申请实施例提供的即时通信消息的处理方法的流程示意图;
[0027]图4A是相关技术的原理示意图;
[0028]图4B至图4C是本申请实施例提供的即时通信消息的处理方法的效果示意图;
[0029]图4D是本申请实施例提供的即时通信消息的处理方法的原理示意图;
[0030]图4E是本申请实施例提供的即时通信消息的处理方法的交互流程示意图。
具体实施方式
[0031]为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
[0032]在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
[0033]在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的
顺序实施。
[0034]除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的
的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
[0035]对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
[0036]1)冷却时间(Cool Down Time):可以是一些网络游戏中为限制玩家在一段时间内使用技能的次数而设定的时间;也可以是聊天消息冷却时间,是指聊天消息发言成功后,直到可以再次发言的时间间隔。
[0037]2)消息队列(Message Queue):是在消息传输过程中保存消息的容器,消息队列管理器在将消息从它的源中继到它的目标时充当中间人。消息队列的主要目的是提供路由并保证消息的传递;如果发送消息时接受者不可用,消息队列会保留消息一直到可以成功的传递。
[0038]3)客户端(Client):是指与服务器相对应,为客户提供本地服务的程序。除了一些只在本地运行的应用程序之外,一般安装在普通的客户机上,需要与服务端相互配合运行。因特网发展之后,较常见的客户端包括了如万维网上使用的网页浏览器,收寄电子邮件时的电子邮件客户端,以及即时通讯的客户端软件等。对于这一类应用程序本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种即时通信消息的处理方法,其特征在于,所述方法包括:接收发送方客户端发送的消息请求,并根据所述消息请求确定所述即时通信消息的类型;响应于所述即时通信消息的类型为通知消息,且从令牌桶中获取到表征发送所述即时通信消息的权限的令牌,将所述即时通信消息转发至每个频道中的客户端;响应于所述即时通信消息的类型为频道消息,将所述即时通信消息存储至消息队列中,并向所述发送方客户端发送回包消息,以使所述发送方客户端预表现所述即时通信消息,以及按照存储时间先后顺序,将所述消息队列中的所述即时通信消息发送至与所述发送方客户端处于相同频道的其他客户端。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:按照投放频率,依次向所述令牌桶中投放表征发送所述即时通信消息的令牌;响应于从所述令牌桶获取到表征发送所述即时通信消息的权限的令牌,将所获取的令牌移出所述令牌桶。3.根据权利要求1所述的方法,其特征在于,所述响应于所述即时通信消息的类型为通知消息,且从令牌桶中获取到表征发送所述即时通信消息的权限的令牌,将所述即时通信消息转发至每个频道中的客户端,包括:响应于所述即时通信消息的类型为所述通知消息,且第一次从所述令牌桶中获取到表征发送所述即时通信消息的权限的令牌,将所述即时通信消息转发至每个频道中的客户端。4.根据权利要求1所述的方法,其特征在于,所述响应于所述即时通信消息的类型为通知消息,且从令牌桶中获取到表征发送所述即时通信消息的权限的令牌,将所述即时通信消息转发至每个频道中的客户端,包括:响应于所述即时通信消息的类型为所述通知消息,且第一次从所述令牌桶中未获取到表征发送所述即时通信消息的权限的令牌,按照获取频率,继续从所述令牌桶中获取所述令牌,直至获取到所述令牌后,将所述即时通信消息转发至每个频道中的客户端。5.根据权利要求1所述的方法,其特征在于,所述将所述即时通信消息存储至消息队列中之前,所述方法还包括:获取所述消息队列的存储情况,其中,所述存储情况表征所述消息队列中的即时通信消息的数量是否等于所述消息队列的容量阈值;当所述消息队列中的即时通信消息的数量等于所述消息队列的容量阈值时,将所述消息队列中存储时间最早的即时通信消息移除出所述消息队列,以及向所述发送方客户端发送取消请求,以使所述发送方客户端对所述存储时间最早的即时通信消息取消所述预表现。6.根据权利要求1所述的方法,其特征在于,所述按照存储时间先后顺序,将所述消息队列中的所述即时通信消息发送至与所述发送发客户端处于相同频道的其他客户端之后,所述方法还包括:将发送至所述其他客户端的即时通信消息移出所述消息队列;向所述发送方客户端发送保留请求,以使所述发送方客户端对发送至所述其他客户端
的即时通信消息保留所述预表现。7.根据权利要求1所述的方法,其特征在于,所述按照存储时间先后顺序,将所述消息队列中的所述即时通信消息发送至与所述发送方客户端处于相同频道的其他客户端,包括:按照所述存储时间先后顺序以及发送频率,在每个发送频率时间点,将所述消息队列中的至少一个所述即时通信消息发送至与所述发送方客户端处于相同频道的其他客户端。8.根据权利要求1所述的方法,其特征在于,所述接收发送方客户端发送的消息请求,包括:接收发送方客户端发送的携带有所述即时通信消息的消息请求...

【专利技术属性】
技术研发人员:党飞黄灏仇斌沈文彬
申请(专利权)人:深圳市腾讯网域计算机网络有限公司
类型:发明
国别省市:

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

1