CN109905463A - 基于web应用多服务器自动发布的方法 - Google Patents
基于web应用多服务器自动发布的方法 Download PDFInfo
- Publication number
- CN109905463A CN109905463A CN201910084391.2A CN201910084391A CN109905463A CN 109905463 A CN109905463 A CN 109905463A CN 201910084391 A CN201910084391 A CN 201910084391A CN 109905463 A CN109905463 A CN 109905463A
- Authority
- CN
- China
- Prior art keywords
- server
- web application
- management system
- code
- base
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于web应用多服务器自动发布的方法,步骤一,提供代码编译模块,服务器将新的代码提交到版本管理系统,触发服务器自动编译;步骤二,建立维护发布计划,提前且自动将所有发布计划维护到版本管理系统,新版本的web应用位于发布库;步骤三,进行增量更新,版本管理系统包含有多个基地服务器,且每一个基地服务器具有预发布区,执行发布任务前,将变更过的新代码同时下载到多个基地服务器的预发布区,新版本的web应用位于预发布区;步骤四,执行发布,预先设定的上线时间一到,则关闭版本管理系统,关闭旧版本的web应用,再发布新版本的web应用;步骤五,重启web应用,系统发布完成,速度快、占用网络带宽和磁盘少及运维成本低。
Description
【技术领域】
本发明涉及一种基于web应用多服务器自动发布的方法,尤指一种计算机软件领域的基于web应用多服务器自动发布的方法。
【背景技术】
web应用系统是大型制造业信息系统,使用人众多,用户分布在不同地区和国家的基地,每个基地使用的系统相对独立,并要求系统24*7小时运行,系统版本一月一大版本上线,一周一小版本上线,再加上BUG修正和各种功能临时上线等,每天都会有大量的上线需求,往往让运维团队非常疲劳;因人为因素导致的上线事故也层出不穷,各基地通过VPN专线连接,带宽1M,系统发布上传代码占用时间长,占用带宽高,并严重影响VPN专线使用。
总结起来,该web应用系统版本更新周期短,发布服务器多,发布任务重,运维成本高,发布操作比较繁琐,运维人员容易疲劳和人为操作失误,并占用大量的网络和磁盘资源,发布时间长,影响专线使用和影响用户对系统的使用。
因此,有必要设计一种好的基于web应用多服务器自动发布的方法,以克服上述问题。
【发明内容】
针对背景技术所面临的问题,本发明的目的在于提供一种并行自动发布,以达到速度快、占用网络带宽和磁盘少,以及运维成本低的基于web应用多服务器自动发布的方法。
为实现上述目的,本发明采用以下技术手段:
一种基于web应用多服务器自动发布的方法,其包括以下步骤:
步骤一:创建新版本,提供一代码编译模块,其内具有一服务器,将新的代码提交到版本管理系统,触发服务器进行自动编译;步骤二:建立维护发布计划,版本管理系统包含有发布库,服务器将新的代码编译完成,提前且自动将所有发布计划维护到版本管理系统,新版本的web应用位于发布库;步骤三:进行增量更新,版本管理系统包含有多个基地服务器,且每一个基地服务器具有预发布区,执行发布任务前,将变更过的新代码同时下载到多个基地服务器的预发布区,新版本的web应用位于预发布区;步骤四:执行发布,预先设定的上线时间一到,则关闭版本管理系统,关闭旧版本的web应用,再发布新版本的web应用;步骤五:重启web应用,系统发布完成。
步骤一中,先创建新版本,然后维护上线时间并安排开发。
步骤一中,安排开发后,对开发完成的新代码进行自测,自测没有问题,新的代码再提交到版本管理系统,版本管理系统收到新的代码提交命令后,再触发服务器进行自动编译,自测出现问题,则再返回重新开发。
步骤二中,新的代码编译完成,在上线前一小时,自动将所有发布计划维护到版本管理系统。
步骤三中,每个基地服务器自动增量更新代码,使得新版本的代码放到预发布区。
步骤四中,执行发布是并行的,多个基地服务器同一时间发布。
与现有技术相比,本发明具有以下有益效果:
上述基于web应用多服务器自动发布的方法,步骤一,创建新版本,提供代码编译模块,服务器将新的代码提交到版本管理系统,触发服务器进行自动编译;步骤二,建立维护发布计划,版本管理系统包含有发布库,服务器将新的代码编译完成,提前且自动将所有发布计划维护到版本管理系统,新版本的web应用位于发布库;步骤三,进行增量更新,版本管理系统包含有多个基地服务器,且每一个基地服务器具有预发布区,执行发布任务前,将变更过的新代码同时下载到多个基地服务器的预发布区,新版本的web应用位于预发布区;步骤四,执行发布,预先设定的上线时间一到,则关闭版本管理系统,关闭旧版本的web应用,再发布新版本的web应用;步骤五,重启web应用,系统发布完成,这样的方式,由于新代码同时下载到多个基地服务器的预发布区,可以达到速度快、占用网络带宽和磁盘少,以及运维成本低的目的。
【附图说明】
图1为本发明基于web应用多服务器自动发布的方法的整体框架图;
图2为本发明基于web应用多服务器自动发布的方法的具体框架步骤图;
图3为本发明基于web应用多服务器自动发布的方法的执行发布示意图。
【具体实施方式】
为便于更好的理解本发明的目的、结构、特征以及功效等,现结合附图和具体实施方式对本发明作进一步说明。
请参见图1至图3,一种基于web应用多服务器自动发布的方法,其包括以下步骤:
步骤一:创建新版本,提供一代码编译模块,其内具有一服务器,然后维护上线时间并安排开发,安排开发后,对开发完成的新代码进行自测,自测没有问题,新的代码再提交到版本管理系统,版本管理系统收到新的代码提交命令后,再触发服务器进行自动编译,自测出现问题,则再返回重新开发。
步骤二:建立维护发布计划,版本管理系统包含有发布库,服务器将新的代码编译完成,在上线前一小时,提前且自动将所有发布计划维护到版本管理系统,新版本的web应用位于发布库。
步骤三:进行增量更新,版本管理系统包含有多个基地服务器,且每一个基地服务器具有预发布区,执行发布任务前,将变更过的新代码同时下载到多个基地服务器的预发布区,每个基地服务器自动增量更新代码,使得新版本的代码放到预发布区,新版本的web应用位于预发布区。传统的手工发布系统,先在本地把新的代码打包,然后把打好的包传到每个基地服务器,如果一个包是300M,需发布6个基地服务器,那就需要传输300M*6=1800M的网络流量和磁盘,本发明的技术方案是使用增量发布,每个新的版本代码修改只有少部分,也就是大部分的代码是没有修改过的,只要把修改过新的代码打包到基地服务器就可以了,如果每个版本变更的新代码是项目的十分之一,新的代码实现增量更新后,只占用300M*1/10*6=180M的网络带宽和磁盘,如此占用网络带宽和磁盘比传统手工发布少,同时也避免了因为频繁发布系统导致网络无法正常使用的情况。
传统的系统发布,从更新代码、编译、打包、上传到基地服务器、系统发布等这个系列都要手工操作,操作非常烦琐,系统版本一月一大版本上线,一周一小版本上线,再加上BUG修正和各种功能临时上线等,每天都会有大量的上线需求,如果用传统方法发布系统,那需要大量的运维成本,运维成本非常高,本发明的技术方案中,系统发布是自动化的,不需人工操作,不产生运维成本,同时也不会因人为因素导致的上线事故。
步骤四:执行发布是并行的,预先设定的上线时间一到,每个基地服务器同一时间发布,之后则关闭版本管理系统,关闭旧版本的web应用,再发布新版本的web应用。执行发布。传统的手工发布是串行的,先发布基地服务器1,基地服务器1发布完成了,再发布基地服务器2,如果发布一个基地服务器需要5分钟,发布6个基地服务器就需要5*6=30分钟,而本发明方案中多个基地服务器的发布是并行的,多个基地服务器在同一时间发布,如果发布一个基地服务器需要5分钟时间,现在不管发布多少个基地服务器,一共就只需要5分钟时间,可以一次性全部发布完成,发布速度快,对用户使用影响少。
步骤五:重启web应用,系统发布完成。
请参见图1至图3,上述基于web应用多服务器自动发布的方法,步骤一,创建新版本,提供代码编译模块,服务器将新的代码提交到版本管理系统,触发服务器进行自动编译;步骤二,建立维护发布计划,版本管理系统包含有发布库,服务器将新的代码编译完成,提前且自动将所有发布计划维护到版本管理系统,新版本的web应用位于发布库;步骤三,进行增量更新,版本管理系统包含有多个基地服务器,且每一个基地服务器具有预发布区,执行发布任务前,将变更过的新代码同时下载到多个基地服务器的预发布区,新版本的web应用位于预发布区;步骤四,执行发布,预先设定的上线时间一到,则关闭版本管理系统,关闭旧版本的web应用,再发布新版本的web应用;步骤五,重启web应用,系统发布完成,这样的方式,由于新代码同时下载到多个基地服务器的预发布区,可以达到速度快、占用网络带宽和磁盘少,以及运维成本低的目的。
以上详细说明仅为本发明之较佳实施例的说明,非因此局限本发明的专利范围,所以,凡运用本创作说明书及图示内容所为的等效技术变化,均包含于本发明的专利范围内。
Claims (6)
1.一种基于web应用多服务器自动发布的方法,其特征在于,包括以下步骤:
步骤一:创建新版本,提供一代码编译模块,其内具有一服务器,将新的代码提交到版本管理系统,触发服务器进行自动编译;
步骤二:建立维护发布计划,版本管理系统包含有发布库,服务器将新的代码编译完成,提前且自动将所有发布计划维护到版本管理系统,新版本的web应用位于发布库;
步骤三:进行增量更新,版本管理系统包含有多个基地服务器,且每一个基地服务器具有预发布区,执行发布任务前,将变更过的新代码同时下载到多个基地服务器的预发布区,新版本的web应用位于预发布区;
步骤四:执行发布,预先设定的上线时间一到,则关闭版本管理系统,关闭旧版本的web应用,再发布新版本的web应用;
步骤五:重启web应用,系统发布完成。
2.如权利要求1所述的基于web应用多服务器自动发布的方法,其特征在于:步骤一中,先创建新版本,然后维护上线时间并安排开发。
3.如权利要求2所述的基于web应用多服务器自动发布的方法,其特征在于:步骤一中,安排开发后,对开发完成的新代码进行自测,自测没有问题,新的代码再提交到版本管理系统,版本管理系统收到新的代码提交命令后,再触发服务器进行自动编译,自测出现问题,则再返回重新开发。
4.如权利要求1所述的基于web应用多服务器自动发布的方法,其特征在于:步骤二中,新的代码编译完成,在上线前一小时,自动将所有发布计划维护到版本管理系统。
5.如权利要求1所述的基于web应用多服务器自动发布的方法,其特征在于:步骤三中,每个基地服务器自动增量更新代码,使得新版本的代码放到预发布区。
6.如权利要求1所述的基于web应用多服务器自动发布的方法,其特征在于:步骤四中,执行发布是并行的,多个基地服务器同一时间发布。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910084391.2A CN109905463A (zh) | 2019-01-29 | 2019-01-29 | 基于web应用多服务器自动发布的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910084391.2A CN109905463A (zh) | 2019-01-29 | 2019-01-29 | 基于web应用多服务器自动发布的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109905463A true CN109905463A (zh) | 2019-06-18 |
Family
ID=66944284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910084391.2A Pending CN109905463A (zh) | 2019-01-29 | 2019-01-29 | 基于web应用多服务器自动发布的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109905463A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112379918A (zh) * | 2020-12-04 | 2021-02-19 | 北京顺达同行科技有限公司 | 代码发布方法、装置、计算机设备和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609645A (zh) * | 2012-01-19 | 2012-07-25 | 北京工业大学 | 一种基于网络隔离结构的网站数据防篡改方法 |
CN103279373A (zh) * | 2013-05-31 | 2013-09-04 | 广州市动景计算机科技有限公司 | 浏览器外壳功能的更新方法及装置 |
CN106899408A (zh) * | 2015-12-18 | 2017-06-27 | 北京网御星云信息技术有限公司 | 一种更新crl的方法和装置 |
CN106919843A (zh) * | 2017-01-24 | 2017-07-04 | 北京奇虎科技有限公司 | 漏洞修复系统、方法及设备 |
CN107229647A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 文案更新方法及装置 |
CN108681461A (zh) * | 2018-05-07 | 2018-10-19 | 广东电网有限责任公司 | 一种集群软件系统不停机更新的方法、系统及相关装置 |
CN108829430A (zh) * | 2018-06-19 | 2018-11-16 | 厦门海迈科技股份有限公司 | 基于Eclipse和Tomcat的Java Web项目更新方法及相关装置 |
-
2019
- 2019-01-29 CN CN201910084391.2A patent/CN109905463A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102609645A (zh) * | 2012-01-19 | 2012-07-25 | 北京工业大学 | 一种基于网络隔离结构的网站数据防篡改方法 |
CN103279373A (zh) * | 2013-05-31 | 2013-09-04 | 广州市动景计算机科技有限公司 | 浏览器外壳功能的更新方法及装置 |
CN106899408A (zh) * | 2015-12-18 | 2017-06-27 | 北京网御星云信息技术有限公司 | 一种更新crl的方法和装置 |
CN107229647A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 文案更新方法及装置 |
CN106919843A (zh) * | 2017-01-24 | 2017-07-04 | 北京奇虎科技有限公司 | 漏洞修复系统、方法及设备 |
CN108681461A (zh) * | 2018-05-07 | 2018-10-19 | 广东电网有限责任公司 | 一种集群软件系统不停机更新的方法、系统及相关装置 |
CN108829430A (zh) * | 2018-06-19 | 2018-11-16 | 厦门海迈科技股份有限公司 | 基于Eclipse和Tomcat的Java Web项目更新方法及相关装置 |
Non-Patent Citations (1)
Title |
---|
陈胜林,方鹏,高玉荣: "《基于XML Web 服务的地图增量更新模型研究》", 《测绘工程》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112379918A (zh) * | 2020-12-04 | 2021-02-19 | 北京顺达同行科技有限公司 | 代码发布方法、装置、计算机设备和存储介质 |
CN112379918B (zh) * | 2020-12-04 | 2024-04-19 | 北京顺达同行科技有限公司 | 代码发布方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105843182B (zh) | 一种基于oms的电力调度事故预案系统及方法 | |
CN110809017A (zh) | 一种基于云平台和微服务构架的数据分析应用平台系统 | |
CN102035892A (zh) | 操作系统版本自动发布和软件包自动更新的系统及方法 | |
CN111274001A (zh) | 微服务管理平台 | |
CN107016094B (zh) | 一种项目共享文件多人协同开发方法、装置及系统 | |
CN110209407A (zh) | 一种大数据集群自动化部署系统及方法 | |
WO2014193450A1 (en) | Updating software components through online stores | |
CN113032963A (zh) | 一种Simulink模型仿真加速方法及装置 | |
CN113568705A (zh) | 一种分布式架构下的代码集成仿真方法 | |
CN103458022A (zh) | 一种多人异地并行协同系统 | |
CN103593183A (zh) | 一种兼容主线版本与oem版本的系统构建方法 | |
CN106873969A (zh) | 一种j2ee项目的开发方法及开发平台 | |
CN109905463A (zh) | 基于web应用多服务器自动发布的方法 | |
CN103984554B (zh) | 软件设计文档的生成方法及装置 | |
CN107894918A (zh) | 一种基于命令行脚本的was对象集成操作方法及装置 | |
CN110795139A (zh) | 客户端批量打包方法、装置、计算机设备和存储介质 | |
CN101169726A (zh) | 基于MTD分区的嵌入式Linux系统在线升级方法 | |
CN115580616A (zh) | 一种多租户架构多云平台下的云rpa系统及应用方法 | |
CN110119279A (zh) | 一种应用及其升级的方法和装置 | |
CN114237760A (zh) | 一种将工业机理模型封装为容器镜像并发布web服务的方法 | |
Belanger | MODSIM II-a modular, object-oriented language | |
Cap | Massive parallelism with workstation clusters—challenge or nonsense? | |
CN110633077B (zh) | 一种基于模块化的快速开发系统及方法 | |
CN110417736A (zh) | 银行跨隔离区软件发布方法、装置及计算机可读存储介质 | |
CN111061789A (zh) | 一种智能电网基建信息管理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190618 |
|
WD01 | Invention patent application deemed withdrawn after publication |