一种分布式会话对象管理方法及系统与流程

文档序号:12967658阅读:372来源:国知局
一种分布式会话对象管理方法及系统与流程

本发明涉及云海后台session管理技术领域,尤其涉及一种分布式会话对象(session)管理方案。



背景技术:

在现有技术架构上,云海后台session管理是通过web容器在单节点上进行管理和存储,用户在登陆云海os访问资源的时候,服务器会给每个用户浏览器创建一个会话对象(session)保存在内存中,当用户请求过来的时候通过sessionid在内存中进行查询搜索对应的session内容。这种情况下如果用户连接数很多,高并发下,会导致保存session的这台服务器内存读取压力很大,可能导致服务访问效率大幅下降。



技术实现要素:

本文提供一种分布式会话对象(session)管理方法及系统,可以解决现有保存session的服务器访问效率低的问题。

本文公开了一种分布式会话对象(session)管理方法,包括:

接收到用户发起的会话请求时,将该会话请求对应的会话标识id作为key从预先配置的分布式存储系统的key-value映射关系中,查询该会话标识id对应的value,提取所述value作为所述会话请求对应的会话内容,反馈给用户。

可选地,上述方法中,所述接收到用户发起的会话请求之前,所述方法还包括:

成功建立会话连接后,将该会话内容存储至所述分布式存储系统上,并将该会话的会话id作为key,将该会话的会话内容作为value,配置在分布式存储系统的key-value映射关系中。

可选地,上述方法中,所述分布式存储系统采用redis分布式集群存储。

可选地,上述方法中,所述接收到的用户发起的会话请求指:

通过浏览器接收到关于会话的http请求。

本文还公开了一种分布式会话对象(session)管理系统,至少包括web容器和分布式存储系统:

所述web容器,在接收到用户发起的会话请求时,将该会话请求对应的会话标识id作为key从所述分布式存储系统的key-value映射关系中,查询该会话标识id对应的value,提取所述value作为所述会话请求对应的会话内容,反馈给用户。

可选地,上述系统中,所述web容器,在成功建立会话连接后,将该会话的会话内容存储至所述分布式存储系统上,并将该会话的会话id作为key,将该会话的会话内容作为value,配置在所述分布式存储系统的key-value映射关系中。

可选地,上述系统中,所述分布式存储系统采用redis分布式集群存储。

可选地,上述系统中,所述web容器接收到的用户发起的会话请求指:

所述web容器通过浏览器接收到关于会话的http请求。



本技术:
技术方案实现了基于redis进行分布式存储session机制,用户可以利用key-value模式的redis数据库进行分布式存储,利用web容器进行管理,通过sessionid作为key来读取对应的session内容,充分利用了redis强大的存储效率,和分布式集群部署的特点,使得读取速度更快,且面对多用户支持集群性能高,极大的提高了系统的访问效率。

附图说明

图1是本发明实施例中分布式会话对象(session)管理方法流程图;

图2是本发明实施例中基于redis分布式存储会话对象(session)的原理示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文将结合具体实施方式对本发明技术方案作进一步详细说明。需要说明的是,在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

本实施例提供一种分布式会话对象(session)管理方法,如图1所示,主要包括如下操作:

步骤100,接收到用户发起的会话请求时,将该会话请求对应的会话id作为key从预先配置的分布式存储系统的key-value映射关系中,查询该会话标识id对应的value;

其中,用户发起的会话请求可以是通过浏览器发起的http请求。

步骤200,所查询到的value的内容即为该会话请求对应的会话内容,提取value的内容反馈给用户。

其中,考虑到redis是内存存储,其具有访问效率较高的特性,因此,本实施例中可以采用redis分布式集群存储方式实现分布式存储session的功能。即事先建立一个分布式集群存储系统(例如,建立redis集群,用于搭建redis分布式存储环境),并配置以key-value存储格式存储session。这样,只要预先配置将session存储到redis中,即可实现session的分布式存储。其原理如图2所示。其工作过程是,在成功建立会话连接后,即刻将已建立的session的内容存储至分布式存储系统上。并且,将session的会话id作为key,将该session的内容作为value,配置在分布式存储系统的key-value映射关系中,以便后续用户访问会话时调用对应内容。

本实施例提供一种分布式会话对象(session)管理系统,主要包括分布式存储系统和web容器。

所述web容器,在接收到用户发起的会话请求时,将该会话请求对应的会话标识id作为key从分布式存储系统的key-value映射关系中,查询该会话标识id对应的value,所查询到的value的内容即为会话请求对应的会话内容,提取此value的内容反馈给用户即可。

另外,web容器,在成功建立会话连接后,还会将该会话内容存储至所述分布式存储系统上,并将该会话的会话id作为key,将该会话内容作为value,配置在分布式存储系统的key-value映射关系中。

考虑到redis的特性,因此分布式存储系统可以采用redis分布式集群存储。

从上述实施例可以看出,本申请技术方案提供基于redis的分布式session管理机制,在redis中分布式存储session,利用sessionid作为key来查找对应的session内容。由于redis是内存存储,访问效率较高,在性能上比较好,因此,在大用户高并发情况下,本申请技术方案具有读取速度快,面对多用户支持集群,高性能等优点,提高系统访问效率。

本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。

以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。



技术特征:

技术总结
本发明公开了一种分布式会话对象管理方法及系统,涉及云海后台session管理技术领域。本文公开的分布式会话对象(session)管理方法,包括:接收到用户发起的会话请求时,将该会话请求对应的会话标识ID作为Key从预先配置的分布式存储系统的Key‑Value映射关系中,查询该会话标识ID对应的Value,提取所述Value作为所述会话请求对应的会话内容,反馈给用户。

技术研发人员:秦政;刘成平
受保护的技术使用者:郑州云海信息技术有限公司
技术研发日:2017.07.31
技术公布日:2017.11.21
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1