【技术实现步骤摘要】
动态修改Nginx配置参数的方法、装置及存储介质
本专利技术涉及服务器处理
,更为具体地,涉及一种动态修改Nginx配置参数的方法、装置及存储介质。
技术介绍
Nginx(enginex)是一个轻量级开源Web服务器软件,作为当前非常流行的HTTP(超文本传输协议)和反向代理Web(WorldWideWeb,互联网)服务器,同时也是一个IMAP(InternetMailAccessProtocol,交互式邮件存取协议)、POP3(PostOfficeProtocol3,邮局协议的第3个版本)、SMTP(SimpleMailTransferProtocol,简单邮件传输协议)代理服务器,丰富灵活的参数配置机制保证了Nginx极其强大的模块可扩展性及功能。Nginx是多进程架构,单台主机上的nginx进程有1个管理进程和多个相互独立的工作进程,一般工作进程个数等于cpu的核数,管理进程接受客户端请求,转交给工作进程处理,从而很好地利用cpu的计算能力。管理进程并不处理客户端网络请求,客户端网络请求是由工作进程来处理,只有其中一个工作进程有可能来处理这个请求,而管理进程负责管理这些工作进程,比如当一个工作进程退出(异常情况下),负责启动新的工作进程,又比如通知所有的工作进程平滑的退出等。每次更改Nginx配置,都必须先手动修改Nginx配置文件,配置文件替换后,再重新加载配置文件,根据新的配置文件对Nginx进行配置,即管理进程在确定根据原有配置文件中的配置信息创建的原有工作进程业务服务结束时,然后根 ...
【技术保护点】
1.一种动态修改Nginx配置参数的方法,其特征在于,包括如下步骤:/nS110:Tomcat根据Web配置界面产生的配置参数生成配置文件,并将所述配置文件与Tomcat中原有的配置文件进行对比,若所述配置文件与所述原有的配置文件不一致,则以所述配置文件替换所述原有的配置文件,并为所述配置文件生成一个唯一的版本号,将所述版本号和所述配置文件关联存入数据库;/nS120:Nginx周期性地向所述Tomcat发起配置文件获取http请求,获取所述配置文件并提取其版本号,比较所提取的版本号与共享内存中的配置文件的版本号,若所提取的版本号比所述共享内存里的配置文件的版本号大,则解析所述配置文件,并将解析后的所述配置文件和其版本号更新至共享内存;/nS130:所述Nginx的工作进程周期性地从所述共享内存提取所述解析后的配置文件的版本号,并比较所述解析后的配置文件的版本号与所述工作进程内部的配置文件版本号,若所述解析后的配置文件的版本号比所述工作进程内部的配置文件版本大,则工作进程提取所述共享内存中的所述解析后的配置文件及其版本号,以更新所述工作进程内部对应的配置信息变量。/n
【技术特征摘要】
1.一种动态修改Nginx配置参数的方法,其特征在于,包括如下步骤:
S110:Tomcat根据Web配置界面产生的配置参数生成配置文件,并将所述配置文件与Tomcat中原有的配置文件进行对比,若所述配置文件与所述原有的配置文件不一致,则以所述配置文件替换所述原有的配置文件,并为所述配置文件生成一个唯一的版本号,将所述版本号和所述配置文件关联存入数据库;
S120:Nginx周期性地向所述Tomcat发起配置文件获取http请求,获取所述配置文件并提取其版本号,比较所提取的版本号与共享内存中的配置文件的版本号,若所提取的版本号比所述共享内存里的配置文件的版本号大,则解析所述配置文件,并将解析后的所述配置文件和其版本号更新至共享内存;
S130:所述Nginx的工作进程周期性地从所述共享内存提取所述解析后的配置文件的版本号,并比较所述解析后的配置文件的版本号与所述工作进程内部的配置文件版本号,若所述解析后的配置文件的版本号比所述工作进程内部的配置文件版本大,则工作进程提取所述共享内存中的所述解析后的配置文件及其版本号,以更新所述工作进程内部对应的配置信息变量。
2.如权利要求1所述的动态修改Nginx配置参数的方法,其特征在于,所述S110中,所述Tomcat在根据Web配置界面产生的配置参数生成配置文件之前,
所述Tomcat接收所述Web配置界面发生改变的配置参数和原有的未发生变化的配置参数,共同生成一个配置文件;其中,
所述Web配置界面产生的配置参数为所述Web配置界面发生改变的配置参数和原有的未发生改变的配置参数;所述Web配置界面为根据配置参数的类型设置的Web配置界面,每种类型的配置参数均配有中文说明。
3.如权利要求1所述的动态修改Nginx配置参数的方法,其特征在于,在S110中,
所述原有的配置文件为上一次配置时生成的配置文件,Tomcat会对每一次生成的配置文件与原有的配置文件进行对比,如果与原有的配置文件一致,则不生成版本号;如果与原有的配置文件不一致,则递增生成一个和该配置文件对应的唯一的版本号,该版本号会同配置文件一同替换Tomcat中原有的配置文件和其对应的版本号。
4.如权利要求1所述的动态修改Nginx配置参数的方法,其特征在于,在S120中,
每隔设定的周期时间,所述Nginx的一个工作进程向所述Tomcat发起配置文件获取http请求,所述Tomcat接收到所述http请求后,将所述配置文件和其版本号发送到所述工作进程,所述工作进程提取所述版本号。
5.如权利要求4所述的动态修改Nginx配置参数的方法,其特征在于,在S120中,
所述工作进程提取所述配置文件的版本号后,与所述共享内存中已有的配置文件版本号比较,若所述配置文件的版本号比所述共享内存中已有的配置文件版本号大,则解析所述配置文件,并将所述解析后的配置文件和其版本号更新至共享内存,替换共享内存中已有的配置文件和其版本号;若所述配置文件的版本号不比共享内存...
【专利技术属性】
技术研发人员:雷林凯,
申请(专利权)人:平安科技深圳有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。