分布式会话更新方法、装置、计算机设备和可读存储介质制造方法及图纸

技术编号:17784195 阅读:33 留言:0更新日期:2018-04-22 15:38
本发明专利技术提供了一种分布式会话更新方法、装置、计算机设备和可读存储介质,其中,分布式会话更新方法,包括:获取会话更新请求信息;根据会话更新请求信息,生成对应的第一会话更新标识信息,并存储于对应的第一分布式节点;发送第一会话更新标识信息至除第一分布式节点外的多个第二分布式节点并获取对应的第一反馈信息;基于一致性算法,根据第一反馈信息,确定是否执行会话更新请求信息对应的会话更新。通过本发明专利技术的技术方案,各个分布式节点自动协商来确定会话更新,一方面减少了因集中式存储的单节点而导致的高并发访问冲突,另一方面,也有利于提高了整体的可扩展性,提升了服务器性能。

【技术实现步骤摘要】
分布式会话更新方法、装置、计算机设备和可读存储介质
本专利技术涉及计算机网络
,具体而言,涉及一种分布式会话更新方法、一种分布式会话更新装置、一种计算机设备和一种计算机可读存储介质。
技术介绍
随着互联网技术的不断发展,越来越多的应用系统部署都朝着大规模、分布式、多机协同的方向发展。大多数的应用系统中都需要有会话功能,来保存用户登录状态,记录用户特有属性。相关技术中,会话一般分为单机会话和分布式会话两种。单机会话是指会话在一台机器上生成并存储,分布式会话是指会话生成和存储是在多台机器上。而分布式会话一般通过前端负载根据一定的规则把请求分发到不同的后端服务器,在不同的后端服务器生成和存储不同的会话或者将会话生成和会话存储分离,所有机器通过一个集中式存储来操作分布式会话,存在以下技术缺陷:(1)通过前端负载根据一定的规则把请求分发到不同的后端服务器,在不同的后端服务器生成和存储不同的会话,会话是在特定服务器存储,一旦这个特定服务器宕机,就会造成用户的会话丢失,无法登陆,可用性较差。(2)通过会话生成和会话存储分离,所有机器通过一个集中式存储来操作分布式会话,集中式存储会是整个应用系统的瓶颈,每次会话更新和获取都需要访问这个集中式存储,水平扩展的机器越多,对集中式存储的访问冲突就会越剧烈,降低了整个业务系统的整体的服务处理能力,限制了多级协同的规模,另外,一旦集中式存储出现故障,容易影响整个应用系统。
技术实现思路
本专利技术旨在至少解决现有技术或相关技术中存在的技术问题之一。为此,本专利技术的一个目的在于提供一种分布式会话更新方法。本专利技术的另一个目的在于提供一种分布式会话更新装置。本专利技术的再一个目的在于提供一种计算机设备。本专利技术的又一个目的在于提供一种计算机可读存储介质。为了实现上述目的,本专利技术的第一方面的技术方案提供了一种分布式会话更新方法,包括:获取会话更新请求信息;根据会话更新请求信息,生成对应的第一会话更新标识信息,并存储于对应的第一分布式节点;发送第一会话更新标识信息至除第一分布式节点外的多个第二分布式节点并获取对应的第一反馈信息;基于一致性算法,根据第一反馈信息,确定是否执行会话更新请求信息对应的会话更新,其中,第一会话更新标识信息包括会话标识、第一分布式节点标识、提案编号,会话更新请求信息包括会话标识、更新属性名称、更新属性值。在该技术方案中,通过获取会话更新请求信息,之后根据会话更新请求信息,生成对应的第一会话更新标识信息,并存储于对应的第一分布式节点,提高了第一会话更新标识信息的有效性,减少了因集中式存储的单节点而导致的高并发访问冲突的发生,节省资源,通过发送第一会话更新标识信息至除第一分布式节点外的多个第二分布式节点并获取对应的第一反馈信息,实现了各个分布式节点自动协商来确定会话更新,减少了因不同分布式节点同时执行同一会话更新而导致的冲突、故障等问题,通过基于一致性算法,根据第一反馈信息,确定是否执行会话更新请求信息对应的会话更新,一方面减少了因集中式存储的单节点而导致的高并发访问冲突、分布式会话整体丢失问题,另一方面,也有利于提高了整体的可扩展性,提升了服务器性能。其中,第一会话更新标识信息包括会话标识、第一分布式节点标识、提案编号,使得第一会话更新标识信息具有唯一性,有利于实现各个分布式节点的自动协商,会话更新请求信息包括会话标识、更新属性名称、更新属性值,涵盖了会话更新的具体内容,有利于实现会话更新。需要说明的是,第一会话更新标识信息是某个分布式节点在收到会话更新请求信息,在该节点根据会话标识和按照递增或者其他规律生成提案编号,也可以由当前时间加上分布式节点标识,一般为IP,作为提案编号,这个提案编号具有唯一性。在上述技术方案中,优选地,还包括:当第二分布式节点接收到第一会话更新标识信息时,判断是否已存储与第一会话更新标识信息中的会话标识相同的第二会话更新标识信息;若判定未存储与第一会话更新标识信息中的会话标识相同的第二会话更新标识信息,则生成第一反馈信息为同意,并存储第一会话更新标识信息;若判定已存储与第一会话更新标识信息中的会话标识相同的第二会话更新标识信息,则判断第二会话更新标识信息的提案编号是否大于第一会话更新标识信息的提案编号,若判定第二会话更新标识信息的提案编号大于第一会话更新标识信息的提案编号,则生成第一反馈信息为拒绝;若判定第二会话更新标识信息的提案编号小于第一会话更新标识信息的提案编号,则生成第一反馈信息为同意以及第二会话更新标识信息。在该技术方案中,通过当第二分布式节点接收到第一会话更新标识信息时,判断是否已存储与第一会话更新标识信息中的会话标识相同的第二会话更新标识信息,并在判定未存储与第一会话更新标识信息中的会话标识相同的第二会话更新标识信息,则生成第一反馈信息为同意,并存储第一会话更新标识信息,在判定已存储与第一会话更新标识信息中的会话标识相同的第二会话更新标识信息,则判断第二会话更新标识信息的提案编号是否大于第一会话更新标识信息的提案编号,减少了同一分布式节点同时同意多个同一会话更新请求信息现象,减少了不同分布式节点同时执行同一会话更新请求信息对应的会话更新而导致的资源浪费,以及冲突故障等问题。通过在判定第二会话更新标识信息的提案编号大于第一会话更新标识信息的提案编号,则生成第一反馈信息为拒绝,在判定第二会话更新标识信息的提案编号小于第一会话更新标识信息的提案编号,则生成第一反馈信息为同意以及第二会话更新标识信息,可以实现优先在提案编号小,也即提案时间早的会话更新标识信息对应的分布式节点上执行会话更新请求信息对应的会话更新,减少了多个分布式节点的相同的会话更新请求信息被重复执行的问题,减少了高并发访问故障等现象的发生,有利于提升整体的可扩展性和服务器的整体性能。在上述任一项技术方案中,优选地,基于一致性算法,根据第一反馈信息,确定是否执行会话更新请求信息对应的会话更新,包括:解析第一反馈信息,并统计第一反馈信息为同意的第二分布式节点的个数;若第一反馈信息为同意的第二分布式节点的个数大于第一预设阈值,则确定在第一会话更新标识信息对应的分布式节点处执行会话更新请求信息对应的会话更新,并清除第一会话更新标识信息;若第一反馈信息为同意的第二分布式节点的个数小于或等于第一预设阈值,则确定不执行会话更新请求信息对应的会话更新,并清除第一会话更新标识信息,其中,第一预设阈值大于分布式节点的数量的一半。在该技术方案中,通过解析第一反馈信息,并统计第一反馈信息为同意的第二分布式节点的个数,在第一反馈信息为同意的第二分布式节点的个数大于第一预设阈值,则确定在第一会话更新标识信息对应的分布式节点处执行会话更新请求信息对应的会话更新,并清除第一会话更新标识信息,在第一反馈信息为同意的第二分布式节点的个数小于或等于第一预设阈值,则确定不执行会话更新请求信息对应的会话更新,并清除第一会话更新标识信息,实现了各个分布式节点自动协商来确定会话更新,减少了同一分布式节点同时同意多个同一会话更新请求信息现象,减少了不同分布式节点同时执行同一会话更新请求信息对应的会话更新而导致的资源浪费,以及冲突故障等问题。需要说明的是,第一预设阈值大于分布式节点的数量的一半,也即在同意的分布式节点数本文档来自技高网...
分布式会话更新方法、装置、计算机设备和可读存储介质

【技术保护点】
一种分布式会话更新方法,其特征在于,包括:获取会话更新请求信息;根据所述会话更新请求信息,生成对应的第一会话更新标识信息,并存储于对应的第一分布式节点;发送所述第一会话更新标识信息至除所述第一分布式节点外的多个第二分布式节点并获取对应的第一反馈信息;基于一致性算法,根据所述第一反馈信息,确定是否执行所述会话更新请求信息对应的会话更新,其中,所述第一会话更新标识信息包括会话标识、所述第一分布式节点标识、提案编号,所述会话更新请求信息包括所述会话标识、更新属性名称、更新属性值。

【技术特征摘要】
1.一种分布式会话更新方法,其特征在于,包括:获取会话更新请求信息;根据所述会话更新请求信息,生成对应的第一会话更新标识信息,并存储于对应的第一分布式节点;发送所述第一会话更新标识信息至除所述第一分布式节点外的多个第二分布式节点并获取对应的第一反馈信息;基于一致性算法,根据所述第一反馈信息,确定是否执行所述会话更新请求信息对应的会话更新,其中,所述第一会话更新标识信息包括会话标识、所述第一分布式节点标识、提案编号,所述会话更新请求信息包括所述会话标识、更新属性名称、更新属性值。2.根据权利要求1所述的分布式会话更新方法,其特征在于,还包括:当所述第二分布式节点接收到所述第一会话更新标识信息时,判断是否已存储与所述第一会话更新标识信息中的所述会话标识相同的第二会话更新标识信息;若判定未存储与所述第一会话更新标识信息中的所述会话标识相同的第二会话更新标识信息,则生成所述第一反馈信息为同意,并存储所述第一会话更新标识信息;若判定已存储与所述第一会话更新标识信息中的所述会话标识相同的第二会话更新标识信息,则判断所述第二会话更新标识信息的所述提案编号是否大于所述第一会话更新标识信息的所述提案编号,若判定所述第二会话更新标识信息的所述提案编号大于所述第一会话更新标识信息的所述提案编号,则生成所述第一反馈信息为拒绝;若判定所述第二会话更新标识信息的所述提案编号小于所述第一会话更新标识信息的所述提案编号,则生成所述第一反馈信息为同意以及所述第二会话更新标识信息。3.根据权利要求1或2所述的分布式会话更新方法,其特征在于,所述基于一致性算法,根据所述第一反馈信息,确定是否执行所述会话更新请求信息对应的会话更新,包括:解析所述第一反馈信息,并统计所述第一反馈信息为同意的所述第二分布式节点的个数;若所述第一反馈信息为同意的所述第二分布式节点的个数大于第一预设阈值,则确定在所述第一会话更新标识信息对应的分布式节点处执行所述会话更新请求信息对应的会话更新,并清除所述第一会话更新标识信息;若所述第一反馈信息为同意的所述第二分布式节点的个数小于或等于所述第一预设阈值,则确定不执行所述会话更新请求信息对应的会话更新,并清除所述第一会话更新标识信息,其中,所述第一预设阈值大于分布式节点的数量的一半。4.根据权利要求1或2所述的分布式会话更新方法,其特征在于,所述基于一致性算法,根据所述第一反馈信息,确定是否执行所述会话更新请求信息对应的会话更新,包括:解析所述第一反馈信息,并确定所述第一反馈信息是否包含所述提案编号小于所述第一会话更新标识信息的所述第二会话更新标识信息;当确定所述第一反馈信息包含所述第二会话更新标识信息时,发送所述第二会话更新标识信息至所述多个第二分布式节点,并获取对应的第二反馈信息;解析所述第二反馈信息,并统计所述第二反馈信息为同意的所述第二分布式节点的个数;若所述第二反馈信息为同意的所述第二分布式节点的个数大于第二预设阈值,则确定在所述第二会话更新标识信息对应的分布式节点处执行所述会话更新请求信息对应的会话更新,并清除所述第一会话更新标识信息和所述第二会话更新标识信息;若所述第二反馈信息为同意的所述第二分布式节点的个数小于或等于所述第二预设阈值,则确定不执行所述会话更新请求信息对应的会话更新,并清除所述第一会话更新标识信息和所述第二会话更新标识信息,其中,所述第二预设阈值大于分布式节点的数量的一半。5.根据权利要求1至4中任一项所述的分布式会话更新方法,其特征在于,所述一致性算法包括Paxos算法、Lamport算法、Gossip算法。6.一种分布式会话更新装置,其特征在于,包括:获取单元,用于获取会话更新请求信息;生成单元,用于根据所述会话更新请求信息,生成对应的第一会话更新标识信息,并存储于对应的第一分布式节点;发送单元,用于发送所述第一会话更新标识信息...

【专利技术属性】
技术研发人员:王帅
申请(专利权)人:用友金融信息技术股份有限公司
类型:发明
国别省市:北京,11

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

1