本发明专利技术实施例适用于计算机技术领域,提供了一种租户数据处理方法、代理组件、电子设备及存储介质,其中,租户数据处理方法应用于Redis服务器的代理组件,该方法包括:获取客户端的请求信息;基于请求信息确定客户端对应的租户;Redis服务器的每个租户对应多个客户端;确定代理组件与Redis服务器之间是否有与租户对应的连接;每个租户在代理组件与Redis服务器之间仅对应一条连接;若代理组件与Redis服务器之间有与租户对应的连接,则将请求信息基于连接转发给Redis服务器。于连接转发给Redis服务器。于连接转发给Redis服务器。
【技术实现步骤摘要】
租户数据处理方法、代理组件、电子设备及存储介质
[0001]本专利技术涉及计算机
,尤其涉及一种租户数据处理方法、代理组件、电子设备及存储介质。
技术介绍
[0002]目前,Redis服务器随着租户数量的上升,Redis服务器的连接数也跟随上升,租户下的客户端都需要建立与Redis服务器的连接,大量连接会占用过多的Redis服务器资源,导致Redis服务器性能下降。
技术实现思路
[0003]为了解决上述问题,本专利技术实施例提供了一种租户数据处理方法、代理组件、电子设备及存储介质,以至少解决相关技术Redis租户的资源利用率低的问题。
[0004]本专利技术的技术方案是这样实现的:
[0005]一方面,本专利技术实施例提供了一种租户数据处理方法,应用于Redis服务器的代理组件,该方法包括:
[0006]获取客户端的请求信息;
[0007]基于所述请求信息确定所述客户端对应的租户;所述Redis服务器的每个租户对应多个客户端;
[0008]确定所述代理组件与所述Redis服务器之间是否有与所述租户对应的连接;每个租户在所述代理组件与所述Redis服务器之间仅对应一条连接;
[0009]若所述代理组件与所述Redis服务器之间有与所述租户对应的连接,则将所述请求信息基于所述连接转发给所述Redis服务器。
[0010]在上述方案中,所述确定所述代理组件与所述Redis服务器之间是否有与所述租户对应的连接,包括:
[0011]基于所述租户的标识信息查询设定数据库,确定所述设定数据库是否存储有所述租户的标识信息对应的套接字;其中,所述代理组件与所述Redis服务器之间的不同的连接对应的套接字不同;
[0012]若所述设定数据库存储有所述租户的标识信息对应的套接字,确定所述代理组件与所述Redis服务器之间存在与所述租户对应的连接。
[0013]在上述方案中,所述将所述请求信息基于所述连接转发给所述Redis服务器,包括:
[0014]确定所述连接的状态;
[0015]若所述连接处于非使用状态,则将所述请求信息基于所述连接转发给所述Redis服务器,并将所述连接标记为使用状态。
[0016]在上述方案中,若所述请求信息表征认证请求,在所述获取客户端的请求信息后,所述方法还包括:
[0017]获取所述请求信息中的用户名和密码;
[0018]将所述用户名和密码转发给所述Redis服务器进行认证;其中,每个租户包括唯一的用户名和密码;
[0019]获取所述Redis服务器发送的认证结果;若认证成功,所述认证结果包括所述客户端对应的租户的标识信息。
[0020]另一方面,本专利技术实施例提供了一种租户数据处理方法,应用于上述Redis服务器,该方法包括:
[0021]获取所述Redis服务器的代理组件转发的客户端的请求信息;
[0022]对所述请求信息进行处理,得到响应信息;
[0023]将所述响应信息基于所述代理组件与所述Redis服务器之间,与所述客户端的租户对应的连接,发送给所述代理组件,以使所述代理组件将所述响应信息转发给所述客户端。
[0024]在上述方案中,所述方法还包括:
[0025]获取所述代理组件发送的用户名和密码;
[0026]对所述用户名和密码进行认证;其中,每个租户包括一对唯一的用户名和密码;
[0027]若认证成功,将所述客户端标记为所述用户名和密码对应的租户;
[0028]将认证结果发送给所述代理模块。
[0029]在上述方案中,对所述请求信息进行处理,包括:
[0030]在所述客户端对应的租户的数据库中,对所述请求信息进行处理;其中,所述Redis服务器的每个租户都对应一个唯一的数据库
[0031]另一方面,本专利技术实施例提供了一种代理组件,该代理组件包括:
[0032]第一获取模块,用于获取客户端的请求信息;
[0033]第一确定模块,用于基于所述请求信息确定所述客户端对应的租户;所述Redis服务器的每个租户对应多个客户端;
[0034]第二确定模块,用于确定所述代理组件与所述Redis服务器之间是否有与所述租户对应的连接;每个租户在所述代理组件与所述Redis服务器之间仅对应一条连接;
[0035]转发模块,用于若所述代理组件与所述Redis服务器之间有与所述租户对应的连接,则将所述请求信息基于所述连接转发给所述Redis服务器。
[0036]另一方面,本专利技术实施例提供了一种租户数据处理装置,该装置包括:
[0037]第二获取模块,用于获取所述Redis服务器的代理组件转发的客户端的请求信息;
[0038]请求处理模块,用于对所述请求信息进行处理,得到响应信息;
[0039]发送模块,用于将所述响应信息基于所述代理组件与所述Redis服务器之间与所述客户端的租户对应的连接,发送给所述代理组件,以使所述代理组件将所述响应信息转发给所述客户端。
[0040]另一方面,本专利技术实施例提供了一种电子设备,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行本专利技术实施例上述方面提供的租户数据处理方法的步骤。
[0041]另一方面,本专利技术实施例提供了一种计算机可读存储介质,包括:所述计算机可读
存储介质存储有计算机程序。所述计算机程序被处理器执行时实现如本专利技术实施例上述方面提供的租户数据处理方法的步骤。
[0042]本专利技术实施例通过代理组件获取客户端的请求信息,基于请求信息确定客户端对应的租户,确定代理组件与Redis服务器之间是否有与该租户对应的连接,若代理组件与Redis服务器之间有与该租户对应的连接,则将请求信息基于该连接转发给Redis服务器。其中,Redis服务器的每个租户对应多个客户端,每个租户在代理组件与Redis服务器之间仅对应一条连接。本实施例由于每个租户在代理组件和Redis服务器之间仅对应一条连接,代理组件将租户的所有客户端的请求都通过与该租户对应的连接发送给Redis服务器,使得同一租户的多个客户端可以复用同一连接,这样降低了Redis服务器的连接数,实现了资源的复用,提高了Redis服务器的资源利用率。并且减小了运维难度,避免了Redis服务器的资源浪费和连接数过多导致的性能下降。
附图说明
[0043]图1是本专利技术实施例提供的一种租户数据处理方法的实现流程示意图;
[0044]图2是本专利技术实施例提供的另一种租户数据处理方法的实现流程示意图;
[0045]图3是本专利技术应用实施例提供的一种Redis多租户架构的示意图;
[0046]图4是本专利技术应用实施例提供的一种代理组件与Redis服务器的网络拓扑图;
[0047]图5是本专利技术实施例提供的一种代理组件的示本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种租户数据处理方法,应用于Redis服务器的代理组件,其特征在于,包括:获取客户端的请求信息;基于所述请求信息确定所述客户端对应的租户;所述Redis服务器的每个租户对应多个客户端;确定所述代理组件与所述Redis服务器之间是否有与所述租户对应的连接;每个租户在所述代理组件与所述Redis服务器之间仅对应一条连接;若所述代理组件与所述Redis服务器之间有与所述租户对应的连接,则将所述请求信息基于所述连接转发给所述Redis服务器。2.如权利要求1所述的方法,其特征在于,所述确定所述代理组件与所述Redis服务器之间是否有与所述租户对应的连接,包括:基于所述租户的标识信息查询设定数据库,确定所述设定数据库是否存储有所述租户的标识信息对应的套接字;其中,所述代理组件与所述Redis服务器之间的不同的连接对应的套接字不同;若所述设定数据库存储有所述租户的标识信息对应的套接字,确定所述代理组件与所述Redis服务器之间存在与所述租户对应的连接。3.如权利要求1所述的方法,其特征在于,所述将所述请求信息基于所述连接转发给所述Redis服务器,包括:确定所述连接的状态;若所述连接处于非使用状态,则将所述请求信息基于所述连接转发给所述Redis服务器,并将所述连接标记为使用状态。4.如权利要求1所述的方法,其特征在于,若所述请求信息表征认证请求,在所述获取客户端的请求信息后,所述方法还包括:获取所述请求信息中的用户名和密码;将所述用户名和密码转发给所述Redis服务器进行认证;其中,每个租户包括唯一的用户名和密码;获取所述Redis服务器发送的认证结果;若认证成功,所述认证结果包括所述客户端对应的租户的标识信息。5.一种租户数据处理方法,应用于如权利要求1至5任一项所述的Redis服务器,所述方法包括:获取所述Redis服务器的代理组件转发的客户端的请求信息;对所述请求信息进行处理,得到响应信息;将所述响应信息基于所述代理组件与所述Redis服务器之间,与所述客户端的租户对应的连接,发送给所述代理组...
【专利技术属性】
技术研发人员:翟攀,王晓开,周加起,曾鑫,
申请(专利权)人:深信服科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。