[发明专利]用户请求转发方法及装置、反向代理服务器和计算机可读存储介质有效
申请号: | 201810629964.0 | 申请日: | 2018-06-19 |
公开(公告)号: | CN108989390B | 公开(公告)日: | 2020-11-10 |
发明(设计)人: | 裴丰硕 | 申请(专利权)人: | 北京智明星通科技股份有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F16/23;G06F9/54;G06F9/52 |
代理公司: | 北京汇思诚业知识产权代理有限公司 11444 | 代理人: | 王刚;龚敏 |
地址: | 100001 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用户 请求 转发 方法 装置 反向 代理服务器 计算机 可读 存储 介质 | ||
本发明提出了一种用户请求转发方法及装置、反向代理服务器和计算机可读存储介质,其中,用户请求转发方法包括:根据接收到的用户请求,从MySQL数据库中获取对应的后端服务器配置参数;将所述后端服务器配置参数缓存至共享内存中,同时,将所述MySQL数据库进行宕机;将所述用户请求转发至所述后端服务器配置参数所对应的后端服务器。通过本发明的技术方案,实现了通过实用性更高更主流的MySQL数据库存储后端服务器配置参数的目的,降低了后端服务器配置参数的存储成本和难度,减小了并发访问对反向代理服务器的性能的影响。
【技术领域】
本发明涉及计算机技术领域,尤其涉及一种用户请求转发方法及装置、反向代理服务器和计算机可读存储介质。
【背景技术】
目前,反向代理服务器是代理服务器的一种,主要用于接收用户的请求,并根据预先配置的规则,把用户请求按需转发给不同的后端服务器,交由后端服务器处理用户请求。通常这种转发规则是预先静态的写到反向代理服务器的配置文件中,这种转发操作被称之为路由。后端服务器处理完用户请求后,将结果数据发送给反向代理服务器,由反向代理服务器把结果发送回客户端。
反向代理服务器是反向代理服务器的改进,用户请求的网站地址反向代理服务器事先并不知道需要转发到哪个后端服务器,此时反向代理服务器仅仅是执行一段程序,由程序决定并告知反向代理服务器应该把请求转发到哪个后端服务器,解决了反向代理服务器规则配置死板、简单的弊端,由于程序的灵活性,同时规避了业务变动引起的需要频繁修改反向代理服务器配置文件的麻烦,为业务系统提供一个统一、易于管理的入口。
Ceryx是基于NGINX OpenResty的动态反向代理,通过程序查询Redis获取后端服务器,其中,Redis是一个key-value存储系统,然而,Ceryx在并发很大时需要频繁连接Redis,导致Redis成为了系统瓶颈。
因此,如何避免并发很大时的系统瓶颈,成为目前亟待解决的技术问题。
【发明内容】
本发明实施例提供了一种用户请求转发方法及装置、反向代理服务器和计算机可读存储介质,旨在解决相关技术中Ceryx在并发很大时产生系统瓶颈的技术问题,能够通过MySQL数据库取代原有的Redis存储系统,有效控制对MySQL数据库的并发访问。
第一方面,本发明实施例提供了一种用户请求转发方法,包括:根据接收到的用户请求,从MySQL数据库中获取对应的后端服务器配置参数;将所述后端服务器配置参数缓存至共享内存中,同时,将所述MySQL数据库进行宕机;将所述用户请求转发至所述后端服务器配置参数所对应的后端服务器。
在本发明上述实施例中,可选地,所述根据接收到的用户请求,从MySQL数据库中获取对应的后端服务器配置参数的步骤,包括:根据接收到的所述用户请求,查询所述共享内存中是否具有对应的后端服务器配置参数;当查询结果为不具有所述后端服务器配置参数时,获取资源互斥锁;基于所述资源互斥锁,再次查询所述共享内存中是否具有所述后端服务器配置参数;当再次查询结果为不具有所述后端服务器配置参数时,从所述MySQL数据库中获取所述后端服务器配置参数。
在本发明上述实施例中,可选地,接收到的所述用户请求的数量为多个时,所述再次查询所述共享内存中是否具有所述后端服务器配置参数的步骤,包括:为最先获取到所述资源互斥锁的用户请求查询所述共享内存中是否具有对应的后端服务器配置参数;则当再次查询结果为不具有所述最先获取到所述资源互斥锁的用户请求对应的后端服务器配置参数时,将所述MySQL数据库中的完整数据更新至所述共享内存中。
在本发明上述实施例中,可选地,还包括:在启动反向代理服务器时,为主进程派生多个子进程;在每个子进程中执行第一定时任务,其中,所述第一定时任务为:监测是否有其他子进程获取到资源互斥锁;当监测到没有其他子进程获取到所述资源互斥锁时,获取所述资源互斥锁,其中,一个子进程最先获取到所述资源互斥锁。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京智明星通科技股份有限公司,未经北京智明星通科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810629964.0/2.html,转载请声明来源钻瓜专利网。