Web配置文件的重载方法和系统与流程

文档序号:12463363阅读:468来源:国知局
Web配置文件的重载方法和系统与流程

本发明涉及计算机互联网技术领域,特别是涉及一种Web配置文件的重载方法和系统。



背景技术:

Web应用依赖于Web容器,Web容器启动时一般需要加载配置文件,而配置文件一般是静态加载,一旦发生修改,需要手动重启容器,使配置得到更新。

但是对于非运维人员而言,一般都是不了解服务器的运行,在修改配置文件之后登陆后台重启Web服务来重载配置文件,操作复杂,使用不便。



技术实现要素:

基于此,有必要针对操作复杂的问题,提供一种Web配置文件的重载方法和系统。

一种Web配置文件的重载方法,包括:

在Web系统启动后,执行Web容器的启动脚本命令,并保存相应的启动进程号;

监测Web系统存储的配置文件,当所述配置文件发生改变时,根据所述启动进程号调用系统管理器杀死Web容器的进程;

接收页面的配置文件修改请求,并将修改的配置文件解析后覆盖Web系统原存储的配置文件;

执行所述启动Web容器的启动脚本命令,对Web容器进行重启。

一种Web配置文件的重载系统,包括:

启动模块,用于在Web系统启动后,执行Web容器的启动脚本命令,并保存相应的启动进程号;

监测模块,用于监测Web系统存储的配置文件,当所述配置文件发生改变时,根据所述启动进程号调用系统管理器杀死Web容器的进程;

更新模块,用于接收页面的配置文件修改请求,并将修改的配置文件解析后覆盖Web系统原存储的配置文件;

重启模块,用于执行所述启动Web容器的启动脚本命令,对Web容器进行重启。

上述Web配置文件的重载方法和系统,在Web系统启动后,保存相应的启动进程号,在配置文件发生改变时,杀死Web容器的进程,并在修改Web系统的配置文件后,再次执行启动脚本命令,对Web容器进行重启,实现配置文件的重载;该重载方案中,无需人工干预,降低了操作复杂性,提高了Web系统使用效率,提升了用户体验。

附图说明

图1为一实施例的Web配置文件的重载方法流程图;

图2为一个实施例Web配置文件的重载实例图;

图3是一实施例的Web配置文件的重载系统结构示意图。

具体实施方式

下面结合附图阐述Web配置文件的重载方法和系统的实施例。

参考图1,图1为一实施例的Web配置文件的重载方法流程图,包括:

S101,在Web系统启动后,执行Web容器的启动脚本命令,并保存相应的启动进程号;

在一个实施例中,对于所述执行Web容器的启动脚本命令过程,可以对Web系统存储的配置文件进行加载,并根据加载配置文件对Web容器和Web系统进行初始化。

对于Web系统的启动,可以通过一条全局命令(command),例如:python manager.py进行启动,Web容器的启动脚本依赖于一定运行环境和启动命令,例如:javac/python/php,或者已封装好的tomcat脚本./start.sh;Web系统设置有存储系统配置信息的配置文件,执行启动命令时,对配置文件进行加载并根据配置文件完成Web容器和Web系统的初始化。

S102,监测Web系统存储的配置文件,当所述配置文件发生改变时,根据所述启动进程号调用系统管理器杀死Web容器的进程;

在一个实施例中,在监测Web系统存储的配置文件时,以设定的周期(如0.5秒)对Web系统存储的配置文件进行检测,获取Web系统的配置文件下的配置文件发生的变化信息。

对于监测配置文件是否发生改变的方案,可以对配置文件的MD5(Message Digest Algorithm,中文名为:消息摘要算法第五版)进行检测,首先获取配置文件的MD5,然后判断配置文件的MD5的变化状态,配置文件的MD5发生变化说明配置文件已经更新。

设置系统的文件事件监控,当Web系统指定文件路径下的配置文件的md5发生改变时,定义句柄(on_any_event)方法,如:Python下的File System Event Handler,发现配置文件的MD5发生改变后,触发对Web服务的重启流程。

S103,接收页面的配置文件修改请求,并将修改的配置文件解析后覆盖Web系统原存储的配置文件;

在Web系统运行过程中,Web系统界面通过解析程序对配置文件信息进行解析,展示在页面的管理界面上,用户从管理界面上对配置文件进行修改,用户点击保存后,Web系统后台的服务器接收修改请求,并把需要修改的配置信息解析后覆盖Web系统的配置文件。

S104,执行所述启动Web容器的启动脚本命令,对Web容器进行重启。

在杀死Web容器的进程后,重新执行Web容器的启动脚本命令,对Web容器进行重启;服务重新上线,Web系统恢复正常,刷新页面;页面刷新后,调用解析服务接口,加载新的配置文件展示在页面上。

作为一种实施方式,考虑到使用客户端(浏览器)时,传统Web页面失去响应后,刷新页面时,直接报错或“服务器拒绝请求”等让用户难以确定的信息,影响用户使用。

为了进一步提高页面提示效果,提升用户体验,在对Web容器进行重启过程中,还包括:当Web系统服务后台接收到Web前端的页面的访问请求时,停止响应该访问请求;在Web容器重启后,重新加载配置文件并刷新所述页面。

在一个实施例中,可以通过阻塞式访问,设置API请求接口进行测试,在正常返回值后重新加载系统页面,Web系统重启过程中不响应外部请求,避免了出现无法连接等页面的报错。

(1)在对Web容器进行重启过程中,当前端的页面执行保存配置文件操作后,在所述页面使用遮罩层屏蔽对该页面的操作功能;

在此过程中,可以在页面上显示进度条,用于显示配置文件的更新进度;

(2)向Web系统设置的测试接口发送请求测试;其中,所述测试接口为Web系统提供用于检测Web系统服务状态的接口;

可以利用脚本语言在的客户端页面上设置定时器,通过页面所在的客户端以设定周期向测试接口发送检测请求;

对于测试接口,可以采用简单接口,如REST类型API接口:/ok GET,通过客户端向接口发送GET请求测试API接口,

(3)Web容器重启完成后,通过测试接口返回重启完成的确认信息,通知Web系统服务重新上线,恢复对页面操作的响应功能;

在重启后,Web系统服务正常时,测试接口返回确认信息至页面,如“OK”;Web系统服务重启完毕后,测试接口返回“OK”,通知页面Web系统服务重新上线,系统恢复正常,刷新页面。

为了更加清晰本发明的技术方案,下面阐述一应用实例。

参考图2所示,图2为一个实施例Web配置文件的重载实例图,在该实例中,设置监测程序,该监测程序执行启动、重启、终止、监控等功能,整体流程如下:

s1:监测程序启动(start)后,加载和监控Web系统的配置文件(config.xml),保存进程号pid;其中,监测程序为整个Web平台的入口程序;

s2:监测程序每隔0.5秒检测配置文件的状态,如果MD5发生变化,调用系统管理器杀死进程号pid的进程;

s3:监测程序重启(restart)Web系统,重新加载和监控Web系统的配置文件;

s4:重启过程中,前端的页面(Html)发送“http://localhost/ok”检测Web系统的测试;

s5:重启完成后,Web系统通过测试接口返回“ok”至页面,重新加载配置文件并刷新页面。

综合上述实施例,本发明的技术方案,在配置文件更新后,后台服务自动重启,无需人工干预;系统管理员无需手动重启服务,实现自动重载和部署;降低了操作复杂性,提高了Web系统使用效率,提升了用户体验。

进一步地,基于阻塞式API请求,Web系统重启过程中不会响应外部页面的访问请求,阻塞式访问也避免了传统Web页面失去响应后刷新页面时出现“无法连接”、“服务器拒绝请求””等页面的报错,提升了用户体验。

参考图3,图3是一实施例的Web配置文件的重载系统结构示意图,包括:

启动模块,用于在Web系统启动后,执行Web容器的启动脚本命令,并保存相应的启动进程号;

监测模块,用于监测Web系统存储的配置文件,当所述配置文件发生改变时,根据所述启动进程号调用系统管理器杀死Web容器的进程;

更新模块,用于接收页面的配置文件修改请求,并将修改的配置文件解析后覆盖Web系统原存储的配置文件;

重启模块,用于执行所述启动Web容器的启动脚本命令,对Web容器进行重启。

本发明的Web配置文件的重载系统与本发明的Web配置文件的重载方法一一对应,在上述Web配置文件的重载方法的实施例阐述的技术特征及其有益效果均适用于Web配置文件的重载系统的实施例中,特此声明。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1