一种分布式会话管理方法及系统技术方案

技术编号:25446585 阅读:44 留言:0更新日期:2020-08-28 22:32
本发明专利技术公开了一种分布式会话管理方法及系统,其中,该方法包括:获取浏览器并发提交的多个请求;对所述多个请求的会话进行过滤处理,并对过滤处理后的会话进行分布式加锁;将加锁的所述会话中的第一请求转发至业务处理层;通过所述业务处理层对所述第一请求进行处理,生成第一请求处理结果;将所述第一请求处理结果提交至数据库;在提交完成后,对加锁的所述会话进行解锁,将所述会话中的第二请求转发至所述业务处理层。该方法及系统可以使同步控制范围从会话过滤开始,通过分布式同步加锁控制,使会话的获取、处理和提交在一个同步控制中,实现会话的同步化控制,保证了分布式环境下并发场景的数据一致性。

【技术实现步骤摘要】
一种分布式会话管理方法及系统
本专利技术涉及会话管理
,尤指一种分布式会话管理方法及系统。
技术介绍
目前,常见的web开发模式均采取前后端分离的开发模式,客户端可以异步、并发的向服务端发起多个请求。即在同一个用户会话内,浏览器端同时发送多个httpReqeuest(http请求),由于服务端使用了分布式会话,所以无需session(会话)亲和,不同的httpRequest可以发送到不同的节点上;而不同的请求又需要对同一个用户会话数据进行更新或者修改,因此会导致数据不一致性。例如,当前浏览器端并发http请求Req-1、Req-2,同时修改session中的一个key:如下表1所示,Req-1请求随机数,放到session中的“_conversationMap”key下的“RS”key中;表1Req-1请求随机数的session信息如下表2所示,Req-2请求token,放到session中的“_conversationMap”key下的“tokenId”key中;表2Req-1请求随机数的sess本文档来自技高网...

【技术保护点】
1.一种分布式会话管理方法,其特征在于,该方法包括:/n获取浏览器并发提交的多个请求;/n对所述多个请求的会话进行过滤处理,并对过滤处理后的会话进行分布式加锁;/n将加锁的所述会话中的第一请求转发至业务处理层;/n通过所述业务处理层对所述第一请求进行处理,生成第一请求处理结果;/n将所述第一请求处理结果提交至数据库;/n在提交完成后,对加锁的所述会话进行解锁,将所述会话中的第二请求转发至所述业务处理层。/n

【技术特征摘要】
1.一种分布式会话管理方法,其特征在于,该方法包括:
获取浏览器并发提交的多个请求;
对所述多个请求的会话进行过滤处理,并对过滤处理后的会话进行分布式加锁;
将加锁的所述会话中的第一请求转发至业务处理层;
通过所述业务处理层对所述第一请求进行处理,生成第一请求处理结果;
将所述第一请求处理结果提交至数据库;
在提交完成后,对加锁的所述会话进行解锁,将所述会话中的第二请求转发至所述业务处理层。


2.根据权利要求1所述的分布式会话管理方法,其特征在于,对所述多个请求的会话进行过滤处理,并对过滤处理后的会话进行分布式加锁,还包括:
加锁后的会话每次允许放行一个请求,会话中其它请求保持等待。


3.根据权利要求1所述的分布式会话管理方法,其特征在于,该方法还包括:
通过所述业务处理层对所述第二请求进行处理,生成第二请求处理结果;
将所述第二请求处理结果提交至所述数据库;
在提交完成后,如果所述会话中还有未处理的请求,对加锁的所述会话进行解锁,将所述会话中未处理的一个请求转发至所述业务处理层,直至所述会话中全部请求都处理完成。


4.根据权利要求1所述的分布式会话管理方法,其特征在于,通过所述业务处理层对所述第一请求进行处理,获取第一请求处理结果,包括:
通过所述业务处理层对所述第一请求进行业务逻辑的处理,对所述第一请求的会话数据进行读、写或更新,生成第一请求处理结果。


5.根据权利要求1所述的分布式会话管理方法,其特征在于,所述数据库为远程字典服务数据库。


6.一种分布式会话管理系统,其特征在于,该系统包括:会话过滤模块、控制模块、业务处理模块及数据库;其中,
会话过滤模块,用于获取浏览器并发提交的多个请求;对所述多个请求的会话进行过滤处理,并对过滤处理后的会话进行分布式加锁;
控制模块,用于将加锁的...

【专利技术属性】
技术研发人员:黄河峰
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京;11

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

1