CN108833588B - 会话处理方法及装置 - Google Patents
会话处理方法及装置 Download PDFInfo
- Publication number
- CN108833588B CN108833588B CN201810747188.4A CN201810747188A CN108833588B CN 108833588 B CN108833588 B CN 108833588B CN 201810747188 A CN201810747188 A CN 201810747188A CN 108833588 B CN108833588 B CN 108833588B
- Authority
- CN
- China
- Prior art keywords
- server
- client
- interaction
- session connection
- session
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开是关于会话处理方法及装置,其中,方法包括:按照预设时间间隔获取服务器集群中每个服务器的会话连接队列中每个客户端对应的历史消息交互记录;根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率;根据所述交互频率,对每个服务器与对应的每个客户端之间的会话连接进行管理。通过该技术方案,最大限度的加快了消息交互的效率,优化了用户实时收取信息,减少了网络的开销。
Description
技术领域
本公开涉及信息交互技术领域,尤其涉及一种会话处理方法及装置。
背景技术
目前,物流任务主动推送的方法是:通过websocket推送,通过客户端与服务端建立会话连接之后,保持一个长链接形式来传输数据。但上述技术方案的缺点在于:1)需要推送给很多业务的时候,要写很多的websocket代码来支持。2)websocket的连接越多,占用内存越高,容易造成雪崩效应。3)无法根据用户的种类来划分发优先级,进行数据的传输。4)session只要不断开就会一直占有,造成内存浪费。
发明内容
本公开实施例提供一种会话处理方法及装置,用以实现优化用户实时收取信息,减少网络的开销,充分的利用CPU以及内存,从而减少服务器,带宽的使用。
根据本公开实施例的第一方面,提供一种会话处理方法,所述会话处理方法包括:
按照预设时间间隔获取服务器集群中每个服务器的会话连接队列中每个客户端对应的历史消息交互记录;
根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率;
根据所述交互频率,对每个服务器与对应的每个客户端之间的会话连接进行管理。
可选的,所述根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率,包括:
根据所述历史消息交互记录和预设的马尔可夫链模型,计算所述每个服务器与对应的每个客户端之间的交互频率。
可选的,根据所述交互频率,对所述每个服务器与对应的每个客户端之间的会话连接进行管理,包括:
当所述交互频率大于或等于第一预设交互频率时,永久保持所述服务器与对应的所述客户端之间的会话连接;
当所述交互频率小于或等于第二预设交互频率时,若所述服务器在向所述客户端发送第一消息之后的预设时长内未发送第二消息,则断开所述服务器与对应的所述客户端之间的会话连接,并将所述客户端从对应的会话连接队列中删除,其中,所述第二预设交互频率小于所述第一预设交互频率。
可选的,根据所述交互频率,对所述每个服务器与对应的每个客户端之间的会话连接进行管理,包括:
根据所述交互频率,对每个服务器对应的会话连接队列中的客户端进行降序排列;
根据排序结果确定所述会话连接队列中客户端的交互消息的发送顺序。
可选的,所述会话处理方法还包括:
将所述每个服务器和对应的客户端之间的交互消息存储至预设数据库;
当任一客户端与对应的第一服务器之间的会话连接断开后,根据接收到的所述任一客户端发送的心跳反馈,按照负载均衡原则从所述服务器集群中选择第二服务器与所述任一客户端重新建立会话连接;
控制所述第二服务器根据所述预设数据库中存储的所述任一客户端对应的交互消息与所述任一客户端进行消息交互。
根据本公开实施例的第二方面,提供一种会话处理装置,所述会话处理装置包括:
获取模块,用于按照预设时间间隔获取服务器集群中每个服务器的会话连接队列中每个客户端对应的历史消息交互记录;
预测模块,用于根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率;
管理模块,用于根据所述交互频率,对每个服务器与对应的每个客户端之间的会话连接进行管理。
可选的,所述预测模块用于:
根据所述历史消息交互记录和预设的马尔可夫链模型,计算所述每个服务器与对应的每个客户端之间的交互频率。
可选的,所述管理模块包括:
第一管理子模块,用于当所述交互频率大于或等于第一预设交互频率时,永久保持所述服务器与对应的所述客户端之间的会话连接;
第二管理子模块,用于当所述交互频率小于或等于第二预设交互频率时,若所述服务器在向所述客户端发送第一消息之后的预设时长内未发送第二消息,则断开所述服务器与对应的所述客户端之间的会话连接,并将所述客户端从对应的会话连接队列中删除,其中,所述第二预设交互频率小于所述第一预设交互频率。
可选的,所述管理模块包括:
排序子模块,用于根据所述交互频率,对每个服务器对应的会话连接队列中的客户端进行降序排列;
确定子模块,用于根据排序结果确定所述会话连接队列中客户端的交互消息的发送顺序。
可选的,所述会话处理装置还包括:
存储模块,用于将所述每个服务器和对应的客户端之间的交互消息存储至预设数据库;
选择模块,用于当任一客户端与对应的第一服务器之间的会话连接断开后,根据接收到的所述任一客户端发送的心跳反馈,按照负载均衡原则从所述服务器集群中选择第二服务器与所述任一客户端重新建立会话连接;
交互模块,用于控制所述第二服务器根据所述预设数据库中存储的所述任一客户端对应的交互消息与所述任一客户端进行消息交互。
根据本公开实施例的第三方面,提供一种会话处理装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
按照预设时间间隔获取服务器集群中每个服务器的会话连接队列中每个客户端对应的历史消息交互记录;
根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率;
根据所述交互频率,对每个服务器与对应的每个客户端之间的会话连接进行管理。
可选的,所述根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率,包括:
根据所述历史消息交互记录和预设的马尔可夫链模型,计算所述每个服务器与对应的每个客户端之间的交互频率。
可选的,根据所述交互频率,对所述每个服务器与对应的每个客户端之间的会话连接进行管理,包括:
当所述交互频率大于或等于第一预设交互频率时,永久保持所述服务器与对应的所述客户端之间的会话连接;
当所述交互频率小于或等于第二预设交互频率时,若所述服务器在向所述客户端发送第一消息之后的预设时长内未发送第二消息,则断开所述服务器与对应的所述客户端之间的会话连接,并将所述客户端从对应的会话连接队列中删除,其中,所述第二预设交互频率小于所述第一预设交互频率。
可选的,根据所述交互频率,对所述每个服务器与对应的每个客户端之间的会话连接进行管理,包括:
根据所述交互频率,对每个服务器对应的会话连接队列中的客户端进行降序排列;
根据排序结果确定所述会话连接队列中客户端的交互消息的发送顺序。
可选的,上述处理器还被配置为:
将所述每个服务器和对应的客户端之间的交互消息存储至预设数据库;
当任一客户端与对应的第一服务器之间的会话连接断开后,根据接收到的所述任一客户端发送的心跳反馈,按照负载均衡原则从所述服务器集群中选择第二服务器与所述任一客户端重新建立会话连接;
控制所述第二服务器根据所述预设数据库中存储的所述任一客户端对应的交互消息与所述任一客户端进行消息交互。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现上述任一方案中所述会话处理方法的步骤。
本公开的实施例提供的技术方案可以包括以下有益效果:
上述技术方案,通过用户的客户端与服务器之间的历史消息交互记录,预测客户端与服务器之间的交互频率,从而根据不同的交互频率动态的对客户端与服务器之间的会话连接进行管理,这样,最大限度的加快了消息交互的效率,优化了用户实时收取信息,减少了网络的开销。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种会话处理方法的流程图。
图2是根据一示例性实施例示出的另一种会话处理方法的流程图。
图3是根据一示例性实施例示出的另一种会话处理方法的流程图。
图4是根据一示例性实施例示出的又一种会话处理方法的流程图。
图5是根据一示例性实施例示出的又一种会话处理方法的流程图。
图6是根据一示例性实施例示出的一种会话处理装置的框图。
图7是根据一示例性实施例示出的一种会话处理装置中管理模块的框图。
图8是根据一示例性实施例示出的一种会话处理装置中管理模块的框图。
图9是根据一示例性实施例示出的另一种会话处理装置的框图。
图10是根据一示例性实施例示出的一种用于会话处理装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种会话处理方法的流程图。
本公开实施例提供了一种会话处理方法,该方法可用于服务器中,如图1所示,该方法包括步骤S101-S103:
步骤S101,按照预设时间间隔获取服务器集群中每个服务器的会话连接队列中每个客户端对应的历史消息交互记录;
步骤S102,根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率;
步骤S103,根据所述交互频率,对每个服务器与对应的每个客户端之间的会话连接进行管理。
在该实施例中,通过用户的客户端与服务器之间的历史消息交互记录,预测客户端与服务器之间的交互频率,从而根据不同的交互频率动态的对客户端与服务器之间的会话连接进行管理,这样,可以最大限度的加快消息交互的效率,优化了用户实时收取信息,减少了网络的开销。
图2是根据一示例性实施例示出的另一种会话处理方法的流程图。
如图2所示,可选的,上述步骤S102包括步骤S201:
步骤S201,根据所述历史消息交互记录和预设的马尔可夫链模型,计算所述每个服务器与对应的每个客户端之间的交互频率。
在该实施例中,可以根据历史消息交互记录和预设的马尔可夫链模型预测每个服务器与对应的每个客户端之间的交互频率,进而根据这个预测的交互频率确定是否断开服务器和客户端之间的会话连接。
图3是根据一示例性实施例示出的另一种会话处理方法的流程图。
如图3所示,可选的,上述步骤S103包括步骤S301-S302:
步骤S301,当所述交互频率大于或等于第一预设交互频率时,永久保持所述服务器与对应的所述客户端之间的会话连接;
步骤S302,当所述交互频率小于或等于第二预设交互频率时,若所述服务器在向所述客户端发送第一消息之后的预设时长内未发送第二消息,则断开所述服务器与对应的所述客户端之间的会话连接,并将所述客户端从对应的会话连接队列中删除,其中,所述第二预设交互频率小于所述第一预设交互频率。
在该实施例中,根据预测的客户端与服务器之间的交互频率对会话连接进行管理,当交互频率大于或等于第一预设交互频率时,说明服务器和客户端的交互频率很高,此时,可以永久保持服务器与对应的客户端之间的会话连接,降低每次客户端和服务器重连花费的时间;而当交互频率小于或等于第二预设交互频率时,此时说明服务器和客户端之间的交互频率很低,此时若服务器在向客户端发送第一消息之后的预设时长内未发送第二消息,则断开服务器与对应的所述客户端之间的会话连接,并将所述客户端从对应的会话连接队列中删除,从而避免对服务器内存资源的浪费,而当该客户端需要建立会话连接时,再次建立会话连接。这样,将客户端划分出高频,低频,并进行不同的会话管理,既保证了高频用户接收交互消息的频率,又避免了对服务器内存资源的浪费,使服务器的内存使用率达到最高。
例如,可以将每分钟交互频率大于80%的客户端确定为高频客户端,将每分钟交互频率在50%到80%的客户端确定为中频客户端,将每分钟交互频率在50%到0的客户端确定为低频客户端。
其中,上述所说的永久保持服务器与对应的客户端之间的会话连接是指在客户端登录到服务器的期间永久保持两者的会话连接,当然,在客户端退出登录时,两者的会话连接会自动断开。其中,每个登录到服务器的用户账号都作为一个客户端存在。
图4是根据一示例性实施例示出的又一种会话处理方法的流程图。
如图4所示,可选的,上述步骤S103还包括步骤S401-S402:
步骤S401,根据所述交互频率,对每个服务器对应的会话连接队列中的客户端进行降序排列;
步骤S402,根据排序结果确定所述会话连接队列中客户端的交互消息的发送顺序。
在该实施例中,还可以根据交互频率对每个服务器对应的会话连接队列中的客户端进行降序排列,并根据降序排列结果确定所述会话连接队列中客户端的交互消息的发送顺序,如优先发送排在前面的,即优先发送高频客户端对应的交互消息,接下来按照降序排列结果依次递减发送,并在发送完毕之后,对低频客户端对应的会话连接进行关闭,需要的时候再次连接即可。
其中,可以采用线程池技术来发送待发送的消息,充分利用CPU的性能来发送数据。
图5是根据一示例性实施例示出的又一种会话处理方法的流程图。
如图5所示,可选的,上述会话处理方法还包括步骤S501-S503:
步骤S501,将所述每个服务器和对应的客户端之间的交互消息存储至预设数据库;
步骤S502,当任一客户端与对应的第一服务器之间的会话连接断开后,根据接收到的所述任一客户端发送的心跳反馈,按照负载均衡原则从所述服务器集群中选择第二服务器与所述任一客户端重新建立会话连接;
步骤S503,控制所述第二服务器根据所述预设数据库中存储的所述任一客户端对应的交互消息与所述任一客户端进行消息交互。
在该实施例中,可以将每个会话连接独立作为一个服务,通过负载均衡,将用户切换到不同的服务器,降低单一服务器的压力,当服务器崩溃时候,自动选择到新的服务器,重新连接,由于交互数据统一存储在预设数据库,因此数据不会丢失。
下述为本公开装置实施例,可以用于执行本公开方法实施例。
图6是根据一示例性实施例示出的一种会话处理装置的框图,该装置可以通过软件、硬件或者两者的结合实现成为服务器的部分或者全部。如图6所示,该会话处理装置包括:
获取模块61,用于按照预设时间间隔获取服务器集群中每个服务器的会话连接队列中每个客户端对应的历史消息交互记录;
预测模块62,用于根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率;
管理模块63,用于根据所述交互频率,对每个服务器与对应的每个客户端之间的会话连接进行管理。
可选的,所述预测模块62用于:
根据所述历史消息交互记录和预设的马尔可夫链模型,计算所述每个服务器与对应的每个客户端之间的交互频率。
图7是根据一示例性实施例示出的一种会话处理装置中管理模块的框图。
如图7所示,可选的,所述管理模块63包括:
第一管理子模块71,用于当所述交互频率大于或等于第一预设交互频率时,永久保持所述服务器与对应的所述客户端之间的会话连接;
第二管理子模块72,用于当所述交互频率小于或等于第二预设交互频率时,若所述服务器在向所述客户端发送第一消息之后的预设时长内未发送第二消息,则断开所述服务器与对应的所述客户端之间的会话连接,并将所述客户端从对应的会话连接队列中删除,其中,所述第二预设交互频率小于所述第一预设交互频率。
图8是根据一示例性实施例示出的一种会话处理装置中管理模块的框图。
如图8所示,可选的,所述管理模块63包括:
排序子模块81,用于根据所述交互频率,对每个服务器对应的会话连接队列中的客户端进行降序排列;
确定子模块82,用于根据排序结果确定所述会话连接队列中客户端的交互消息的发送顺序。
图9是根据一示例性实施例示出的另一种会话处理装置的框图。
如图9所示,可选的,所述会话处理装置还包括:
存储模块91,用于将所述每个服务器和对应的客户端之间的交互消息存储至预设数据库;
选择模块92,用于当任一客户端与对应的第一服务器之间的会话连接断开后,根据接收到的所述任一客户端发送的心跳反馈,按照负载均衡原则从所述服务器集群中选择第二服务器与所述任一客户端重新建立会话连接;
交互模块93,用于控制所述第二服务器根据所述预设数据库中存储的所述任一客户端对应的交互消息与所述任一客户端进行消息交互。
根据本公开实施例的第三方面,提供一种会话处理装置,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
按照预设时间间隔获取服务器集群中每个服务器的会话连接队列中每个客户端对应的历史消息交互记录;
根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率;
根据所述交互频率,对每个服务器与对应的每个客户端之间的会话连接进行管理。
可选的,所述根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率,包括:
根据所述历史消息交互记录和预设的马尔可夫链模型,计算所述每个服务器与对应的每个客户端之间的交互频率。
可选的,根据所述交互频率,对所述每个服务器与对应的每个客户端之间的会话连接进行管理,包括:
当所述交互频率大于或等于第一预设交互频率时,永久保持所述服务器与对应的所述客户端之间的会话连接;
当所述交互频率小于或等于第二预设交互频率时,若所述服务器在向所述客户端发送第一消息之后的预设时长内未发送第二消息,则断开所述服务器与对应的所述客户端之间的会话连接,并将所述客户端从对应的会话连接队列中删除,其中,所述第二预设交互频率小于所述第一预设交互频率。
可选的,根据所述交互频率,对所述每个服务器与对应的每个客户端之间的会话连接进行管理,包括:
根据所述交互频率,对每个服务器对应的会话连接队列中的客户端进行降序排列;
根据排序结果确定所述会话连接队列中客户端的交互消息的发送顺序。
可选的,上述处理器还被配置为:
将所述每个服务器和对应的客户端之间的交互消息存储至预设数据库;
当任一客户端与对应的第一服务器之间的会话连接断开后,根据接收到的所述任一客户端发送的心跳反馈,按照负载均衡原则从所述服务器集群中选择第二服务器与所述任一客户端重新建立会话连接;
控制所述第二服务器根据所述预设数据库中存储的所述任一客户端对应的交互消息与所述任一客户端进行消息交互。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现上述任一方案中所述会话处理方法的步骤。
图10是根据一示例性实施例示出的一种用于会话处理装置的框图。例如,装置1900可以被提供为一服务器。装置1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到网络,和一个输入输出(I/O)接口1958。装置1900可以操作基于存储在存储器1932的操作系统,例如Windows ServerTM,MacOS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置1200的处理器执行时,使得装置1200能够执行上述会话处理方法,所述方法包括:
按照预设时间间隔获取服务器集群中每个服务器的会话连接队列中每个客户端对应的历史消息交互记录;
根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率;
根据所述交互频率,对每个服务器与对应的每个客户端之间的会话连接进行管理。
可选的,所述根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率,包括:
根据所述历史消息交互记录和预设的马尔可夫链模型,计算所述每个服务器与对应的每个客户端之间的交互频率。
可选的,根据所述交互频率,对所述每个服务器与对应的每个客户端之间的会话连接进行管理,包括:
当所述交互频率大于或等于第一预设交互频率时,永久保持所述服务器与对应的所述客户端之间的会话连接;
当所述交互频率小于或等于第二预设交互频率时,若所述服务器在向所述客户端发送第一消息之后的预设时长内未发送第二消息,则断开所述服务器与对应的所述客户端之间的会话连接,并将所述客户端从对应的会话连接队列中删除,其中,所述第二预设交互频率小于所述第一预设交互频率。
可选的,根据所述交互频率,对所述每个服务器与对应的每个客户端之间的会话连接进行管理,包括:
根据所述交互频率,对每个服务器对应的会话连接队列中的客户端进行降序排列;
根据排序结果确定所述会话连接队列中客户端的交互消息的发送顺序。
可选的,所述会话处理方法还包括:
将所述每个服务器和对应的客户端之间的交互消息存储至预设数据库;
当任一客户端与对应的第一服务器之间的会话连接断开后,根据接收到的所述任一客户端发送的心跳反馈,按照负载均衡原则从所述服务器集群中选择第二服务器与所述任一客户端重新建立会话连接;
控制所述第二服务器根据所述预设数据库中存储的所述任一客户端对应的交互消息与所述任一客户端进行消息交互。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种会话处理方法,其特征在于,所述会话处理方法包括:
按照预设时间间隔获取服务器集群中每个服务器的会话连接队列中每个客户端对应的历史消息交互记录;
根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率;
根据所述交互频率,对每个服务器与对应的每个客户端之间的会话连接进行管理;
根据所述交互频率,对所述每个服务器与对应的每个客户端之间的会话连接进行管理,包括:
当所述交互频率大于或等于第一预设交互频率时,永久保持所述服务器与对应的所述客户端之间的会话连接;其中,永久保持所述服务器与对应的所述客户端之间的会话连接,是指在客户端登录到服务器的期间永久保持两者的会话连接;
当所述交互频率小于或等于第二预设交互频率时,若所述服务器在向所述客户端发送第一消息之后的预设时长内未发送第二消息,则断开所述服务器与对应的所述客户端之间的会话连接,并将所述客户端从对应的会话连接队列中删除,其中,所述第二预设交互频率小于所述第一预设交互频率。
2.根据权利要求1所述的会话处理方法,其特征在于,所述根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率,包括:
根据所述历史消息交互记录和预设的马尔可夫链模型,计算所述每个服务器与对应的每个客户端之间的交互频率。
3.根据权利要求1所述的会话处理方法,其特征在于,根据所述交互频率,对所述每个服务器与对应的每个客户端之间的会话连接进行管理,包括:
根据所述交互频率,对每个服务器对应的会话连接队列中的客户端进行降序排列;
根据排序结果确定所述会话连接队列中客户端的交互消息的发送顺序。
4.根据权利要求1至3中任一项所述的会话处理方法,其特征在于,所述会话处理方法还包括:
将所述每个服务器和对应的客户端之间的交互消息存储至预设数据库;
当任一客户端与对应的第一服务器之间的会话连接断开后,根据接收到的所述任一客户端发送的心跳反馈,按照负载均衡原则从所述服务器集群中选择第二服务器与所述任一客户端重新建立会话连接;
控制所述第二服务器根据所述预设数据库中存储的所述任一客户端对应的交互消息与所述任一客户端进行消息交互。
5.一种会话处理装置,其特征在于,所述会话处理装置包括:
获取模块,用于按照预设时间间隔获取服务器集群中每个服务器的会话连接队列中每个客户端对应的历史消息交互记录;
预测模块,用于根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率;
管理模块,用于根据所述交互频率,对每个服务器与对应的每个客户端之间的会话连接进行管理;
所述管理模块包括:
第一管理子模块,用于当所述交互频率大于或等于第一预设交互频率时,永久保持所述服务器与对应的所述客户端之间的会话连接;其中,永久保持所述服务器与对应的所述客户端之间的会话连接,是指在客户端登录到服务器的期间永久保持两者的会话连接;
第二管理子模块,用于当所述交互频率小于或等于第二预设交互频率时,若所述服务器在向所述客户端发送第一消息之后的预设时长内未发送第二消息,则断开所述服务器与对应的所述客户端之间的会话连接,并将所述客户端从对应的会话连接队列中删除,其中,所述第二预设交互频率小于所述第一预设交互频率。
6.根据权利要求5所述的会话处理装置,其特征在于,所述预测模块用于:
根据所述历史消息交互记录和预设的马尔可夫链模型,计算所述每个服务器与对应的每个客户端之间的交互频率。
7.根据权利要求5所述的会话处理装置,其特征在于,所述管理模块包括:
排序子模块,用于根据所述交互频率,对每个服务器对应的会话连接队列中的客户端进行降序排列;
确定子模块,用于根据排序结果确定所述会话连接队列中客户端的交互消息的发送顺序。
8.根据权利要求5至7中任一项所述的会话处理装置,其特征在于,所述会话处理装置还包括:
存储模块,用于将所述每个服务器和对应的客户端之间的交互消息存储至预设数据库;
选择模块,用于当任一客户端与对应的第一服务器之间的会话连接断开后,根据接收到的所述任一客户端发送的心跳反馈,按照负载均衡原则从所述服务器集群中选择第二服务器与所述任一客户端重新建立会话连接;
交互模块,用于控制所述第二服务器根据所述预设数据库中存储的所述任一客户端对应的交互消息与所述任一客户端进行消息交互。
9.一种会话处理装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:
按照预设时间间隔获取服务器集群中每个服务器的会话连接队列中每个客户端对应的历史消息交互记录;
根据所述历史消息交互记录,预测每个服务器与对应的每个客户端之间的交互频率;
根据所述交互频率,对每个服务器与对应的每个客户端之间的会话连接进行管理;
根据所述交互频率,对所述每个服务器与对应的每个客户端之间的会话连接进行管理,包括:
当所述交互频率大于或等于第一预设交互频率时,永久保持所述服务器与对应的所述客户端之间的会话连接;其中,永久保持所述服务器与对应的所述客户端之间的会话连接,是指在客户端登录到服务器的期间永久保持两者的会话连接;
当所述交互频率小于或等于第二预设交互频率时,若所述服务器在向所述客户端发送第一消息之后的预设时长内未发送第二消息,则断开所述服务器与对应的所述客户端之间的会话连接,并将所述客户端从对应的会话连接队列中删除,其中,所述第二预设交互频率小于所述第一预设交互频率。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1至4中任一项所述会话处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810747188.4A CN108833588B (zh) | 2018-07-09 | 2018-07-09 | 会话处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810747188.4A CN108833588B (zh) | 2018-07-09 | 2018-07-09 | 会话处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108833588A CN108833588A (zh) | 2018-11-16 |
CN108833588B true CN108833588B (zh) | 2021-10-12 |
Family
ID=64136553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810747188.4A Active CN108833588B (zh) | 2018-07-09 | 2018-07-09 | 会话处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108833588B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112583610B (zh) * | 2019-09-27 | 2023-04-11 | 顺丰科技有限公司 | 系统状态的预测方法、装置、服务器及存储介质 |
CN112836136B (zh) * | 2019-11-22 | 2023-07-18 | 腾讯科技(深圳)有限公司 | 聊天界面的显示方法、装置及设备 |
CN115334141A (zh) * | 2022-08-03 | 2022-11-11 | 上海艺赛旗软件股份有限公司 | 一种基于心跳机制的双向数据传输系统、方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101459881A (zh) * | 2007-12-12 | 2009-06-17 | 中国移动通信集团公司 | 消息承载方法以及客户端、消息服务器 |
CN103780679A (zh) * | 2014-01-03 | 2014-05-07 | 电子科技大学 | 基于http协议的长延时远程调用方法 |
US8874761B2 (en) * | 2013-01-25 | 2014-10-28 | Seven Networks, Inc. | Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols |
US9225738B1 (en) * | 2014-06-30 | 2015-12-29 | Emc Corporation | Markov behavior scoring |
CN106934489A (zh) * | 2017-02-22 | 2017-07-07 | 南京邮电大学 | 一种面向复杂网络的时序链路预测方法 |
-
2018
- 2018-07-09 CN CN201810747188.4A patent/CN108833588B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101459881A (zh) * | 2007-12-12 | 2009-06-17 | 中国移动通信集团公司 | 消息承载方法以及客户端、消息服务器 |
US8874761B2 (en) * | 2013-01-25 | 2014-10-28 | Seven Networks, Inc. | Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols |
CN103780679A (zh) * | 2014-01-03 | 2014-05-07 | 电子科技大学 | 基于http协议的长延时远程调用方法 |
US9225738B1 (en) * | 2014-06-30 | 2015-12-29 | Emc Corporation | Markov behavior scoring |
CN106934489A (zh) * | 2017-02-22 | 2017-07-07 | 南京邮电大学 | 一种面向复杂网络的时序链路预测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108833588A (zh) | 2018-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210311781A1 (en) | Method and system for scalable job processing | |
CN107948284B (zh) | 一种基于微服务架构的服务下线方法、设备和系统 | |
CN110839084B (zh) | 会话管理方法、装置、设备和介质 | |
CN108833588B (zh) | 会话处理方法及装置 | |
CN110149392A (zh) | 一种推送消息的管理方法及装置 | |
CN109218341B (zh) | 用于监控服务器和用于服务器的负载均衡方法和装置 | |
CN107342929B (zh) | 一种新消息通知的发送方法、装置及系统 | |
CN109428926B (zh) | 一种调度任务节点的方法和装置 | |
CN114221954A (zh) | 文件传输方法及装置、电子设备及存储介质 | |
KR102001103B1 (ko) | 전자장치, 서버 및 시스템의 제어방법 | |
CN112104679B (zh) | 处理超文本传输协议请求的方法、装置、设备和介质 | |
CN109639490B (zh) | 一种宕机通知方法及装置 | |
US11463549B2 (en) | Facilitating inter-proxy communication via an existing protocol | |
CN110336884B (zh) | 服务器集群更新方法和装置 | |
CN111831503B (zh) | 一种基于监控代理的监控方法和监控代理装置 | |
US9647966B2 (en) | Device, method and non-transitory computer readable storage medium for performing instant message communication | |
US9537742B2 (en) | Automatic adjustment of application launch endpoints | |
CN115543345A (zh) | 一种针对电力时序数据的分布式计算系统及其实现方法 | |
US9742927B2 (en) | Online charging method for always on IP connectivity | |
CN110888770B (zh) | 用于发送信息的方法和装置 | |
CN110933122B (zh) | 管理服务器的方法、设备和计算机存储介质 | |
CN114189890A (zh) | 更新网络服务质量模型的方法、装置、设备及存储介质 | |
CN114024968A (zh) | 一种基于中间设备的报文发送方法、装置和电子设备 | |
CN111625375A (zh) | 帐号预约方法和装置、存储介质及电子设备 | |
CN110764932A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |