一种即时通信消息处理方法、装置、服务器及系统与流程

文档序号:28320859发布日期:2022-01-04 22:43阅读:100来源:国知局
一种即时通信消息处理方法、装置、服务器及系统与流程

1.本技术涉及即时通信技术领域,尤其涉及一种即时通信消息处理方法、装置、服务器及系统。


背景技术:

2.随着移动互联网技术的发展,各种社交应用进入到人们的日常生活中,社交应用的陌生人社交需求就诞生了。
3.现在业界的主要实现方案主要是通过云存储保存用户交流的内容,用户关系有双向关系群体的聊天记录,可以通过用户建立的用户关系找到对应聊天用户,并查看聊天内容。但是当聊天的双方为非好友关系时,这类聊天记录的双方不需要建立用户关系,交流方式更自由,使得这类聊天数据的产生具有较大的不可控性,且数据量增长速度更快,按照传统的存储处理方式会为服务器存储空间造成巨大的存储压力。


技术实现要素:

4.本技术提供了一种即时通信消息处理方法、装置、服务器及系统,用于解决传统的存储处理方式容易为服务器存储空间造成存储压力的技术问题。
5.本技术第一方面提供了一种即时通信消息处理方法,包括:
6.接收即时通信消息记录;
7.当所述即时通信消息记录的通信双方为非好友关系时,根据所述通信双方的即时通信消息记录,统计所述即时通信消息记录中的消息统计数据,所述消息统计数据具体包括:通信消息总数、已读消息数以及未读消息数;
8.根据所述消息统计数据与所述通信双方的用户信息,生成即时通信消息存储数据,以将所述即时通信消息存储数据发送至存储模块中进行存储。
9.优选地,所述方法还包括:
10.从所述通信双方的即时通信消息记录中提取出若干条预览消息记录,并根据所述预览消息记录以及所述通信双方的用户信息,生成预览消息存储数据,以将所述预览消息存储数据发送至存储模块中进行存储。
11.优选地,所述预览消息记录具体为:所述通信双方的即时通信消息记录中最后一条即时通信消息。
12.优选地,当所述预览消息记录的消息类型为非文本类型时,则按照所述预览消息记录的消息类型,生成所述消息类型对应的文本信息,并以所述文本信息替代所述预览消息记录。
13.优选地,当所述预览消息记录的消息类型为文本类型时,则按照预设的字符长度,对所述预览消息记录进行字符裁剪,得到裁剪文本信息,并以所述裁剪文本信息替代所述预览消息记录。
14.优选地,所述非文本类型具体包括:图片类消息、语音类消息以及通知类消息。
15.优选地,所述方法还包括:
16.当新生成的预览消息存储数据的用户信息与所述存储模块中保存的预览消息存储数据的用户信息相同时,则将所述新生成的预览消息存储数据替换所述存储模块中保存的预览消息存储数据。
17.本技术第二方面提供了一种即时通信消息处理装置,包括:
18.即时通信消息接收单元,用于接收即时通信消息记录;
19.消息处理单元,用于当所述即时通信消息记录的通信双方为非好友关系时,根据所述通信双方的即时通信消息记录,统计所述即时通信消息记录中的消息统计数据,所述消息统计数据具体包括:通信消息总数、已读消息数以及未读消息数;
20.存储数据生成单元,用于根据所述消息统计数据与所述通信双方的用户信息,生成即时通信消息存储数据,以将所述即时通信消息存储数据发送至存储模块中进行存储。
21.本技术第三方面提供了一种即时通信服务器,包括:存储器和处理器;
22.所述存储器用于存储程序代码,所述程序代码与如本技术第一方面提供的即时通信消息处理方法相对应;
23.所述处理器用于执行所述程序代码。
24.本技术第四方面提供了一种即时通信系统,包括:即时通信客户端、存储模块以及如本技术第三方面提供的即时通信服务器;
25.所述即时通信客户端、所述即时通信服务器以及所述存储模块依次通信连接;
26.所述存储模块用于存储所述即时通信服务器发送的即时通信消息存储数据。
27.从以上技术方案可以看出,本技术具有以下优点:
28.本技术提供的方法根据接收到的即时通信消息记录,当该通信双方为非好友关系时,根据通信双方的即时通信消息记录,统计即时通信消息记录中的消息统计数据,根据消息统计数据与通信双方的用户信息,生成即时通信消息存储数据进行存储处理,同时由于即时通信消息存储数据包含的信息仅为整形数字的偏移量,相比与传统聊天数据存储方式,即可以实现通过即时通信消息存储数据中的信息还原非好友用户间的通信关系,同时减少了数据量,保证非好友聊天记录数据量增长可控。
附图说明
29.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
30.图1为本技术提供的一种即时通信系统的架构示意图。
31.图2为本技术提供的一种即时通信消息处理方法的一个实施例的流程示意图。
32.图3为本技术提供的一种即时通信消息处理方法的另一个实施例的流程示意图。
33.图4为本技术提供的一种即时通信消息处理装置的一个实施例的结构示意图。
具体实施方式
34.本技术实施例提供了一种即时通信消息处理方法、装置、服务器及系统,用于解决
传统的存储处理方式容易为服务器存储空间造成存储压力的技术问题。
35.为使得本技术的发明目的、特征、优点能够更加的明显和易懂,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本技术一部分实施例,而非全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
36.请参阅图1,本实施例提供了一种即时通信系统,包括:即时通信客户端、存储模块以及即时通信服务器;
37.即时通信客户端imlogic、即时通信服务器imserver以及存储模块依次通信连接;
38.存储模块用于存储即时通信服务器发送的即时通信消息存储数据。其中存储模块包括:持久化存储,如mysql存储模块,和/或非持久化存储,如redis存储模块。
39.该系统主要由imlogic、imserver,以及mysql和/或redis组成。用户消息经由即时通信客户端imlogic将即时通信消息可以写入到消息队列。imlogic通过消息队列的只是用户发起的原始数据结构。这里记录的信息较多,这时候需要即时通信服务器imserver按照本技术提供的即时通信消息处理方法对该数据进行加工处理,处理完成后再将处理后的数据发送给存储模块进行存储。
40.本实施例中消息队列的存在:一方面可以后端针对单个用户多次请求一次处理。减少存储层的读写压力。二方面当前端请求较大时。对后端可以做到去峰。保证系统的稳定性和健壮性。
41.redis的作用可以降低mysql压力。redis的读写比为30:1,读操作远远高于写操作。配合可以本技术提供的即时通信消息处理方法产生的存储结构,可以进一步保证了数据增长是可控的,不会出现指数级增长。
42.以上内容便是本技术提供的一种即时通信系统的一个实施例的详细说明,下面内容为本技术提供的一种即时通信消息处理方法的一个实施例的详细说明。
43.请参阅图2,本实施例提供了一种即时通信消息处理方法,包括:
44.步骤101、接收即时通信消息记录;
45.步骤102、当即时通信消息记录的通信双方为非好友关系时,根据通信双方的即时通信消息记录,统计即时通信消息记录中的消息统计数据,
46.其中,消息统计数据具体包括:通信消息总数、已读消息数以及未读消息数;
47.步骤103、根据消息统计数据与通信双方的用户信息,生成即时通信消息存储数据,以将即时通信消息存储数据发送至存储模块中进行存储。
48.本技术的即时通信消息存储数据优化为一个用户记录自己的陌生人聊天关系,一个和哪些非好友用户有消息记录,通过redis的有序集存储,key为用户id,score为对方用户id,value为两个用户间聊天的总数,未读数,已读数。该存储方案保证数据增长可控。同时这里只保存了整形数字的偏移量,减少了数据量。
49.本技术的技术方案主要针对社交应用的陌生人社交模式,陌生人社交有一个建立关系前的涉及场景,这种场景下用户没有建立关系,但是又少量的交换,如果不能有一个地方记录两个人的联系,用户退出重新登陆后,两个用户的关系就丢失了,下次再联系就无法再找到对方,不能有效帮忙用户进行社交。对这类数据量大,变化频繁的数据进行了优化存
储。在满足业务场景需求的前提,优化了存储结构,保证了系统成长的可控性。
50.请参阅图3,进一步地,在上一个实施例提供的方法的基础上,其方法还包括:
51.步骤104、从通信双方的即时通信消息记录中提取出若干条预览消息记录,并根据预览消息记录以及通信双方的用户信息,生成预览消息存储数据,以将预览消息存储数据发送至存储模块中进行存储。
52.进一步地,预览消息记录具体为:通信双方的即时通信消息记录中最后一条即时通信消息。
53.进一步地,当预览消息记录的消息类型为非文本类型时,则按照预览消息记录的消息类型,生成消息类型对应的文本信息,并以文本信息替代预览消息记录。
54.进一步地,当预览消息记录的消息类型为文本类型时,则按照预设的字符长度,对预览消息记录进行字符裁剪,得到裁剪文本信息,并以裁剪文本信息替代预览消息记录。
55.进一步地,非文本类型具体包括:图片类消息、语音类消息以及通知类消息。
56.预览消息记录的消息类型分为两种情况,一种情况:文本信息,这时候需要截断文本信息,只记录10个字符长度,用于预览展示用。记录到双方的展示数据里。另外一种情况:非文本信息,有图片、声音,邀请通知类等,该情况会生成特定的预览信息,如“好友邀请”等预览内容,加入到预览信息数据结构,记录到redis和mysql。redis的数据用于客户端访问。mysql数据用户持久化存储。
57.进一步地,方法还包括:
58.步骤105、当新生成的预览消息存储数据的用户信息与存储模块中保存的预览消息存储数据的用户信息相同时,则将新生成的预览消息存储数据替换存储模块中保存的预览消息存储数据。
59.以上内容为本技术提供的一种即时通信消息处理方法的实施例的详细说明,下面为本技术提供的一种即时通信消息处理装置的实施例的详细说明。
60.请参阅图4,本实施例提供了一种即时通信消息处理装置,包括:
61.即时通信消息接收单元201,用于接收即时通信消息记录;
62.消息处理单元202,用于当即时通信消息记录的通信双方为非好友关系时,根据通信双方的即时通信消息记录,统计即时通信消息记录中的消息统计数据,消息统计数据具体包括:通信消息总数、已读消息数以及未读消息数;
63.存储数据生成单元203,用于根据消息统计数据与通信双方的用户信息,生成即时通信消息存储数据,以将即时通信消息存储数据发送至存储模块中进行存储。
64.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的终端,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
65.在本技术所提供的几个实施例中,应该理解到,所揭露的终端,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
66.本技术的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存
在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例,例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
67.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
68.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
69.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
70.以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1