CN109905463A - 基于web应用多服务器自动发布的方法 - Google Patents

基于web应用多服务器自动发布的方法 Download PDF

Info

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
Application number
CN201910084391.2A
Other languages
English (en)
Inventor
李世贵
刘凯
曾永兴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Haihang Communication Technology Co Ltd
Original Assignee
Beijing Haihang Communication Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Haihang Communication Technology Co Ltd filed Critical Beijing Haihang Communication Technology Co Ltd
Priority to CN201910084391.2A priority Critical patent/CN109905463A/zh
Publication of CN109905463A publication Critical patent/CN109905463A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种基于web应用多服务器自动发布的方法,步骤一,提供代码编译模块,服务器将新的代码提交到版本管理系统,触发服务器自动编译;步骤二,建立维护发布计划,提前且自动将所有发布计划维护到版本管理系统,新版本的web应用位于发布库;步骤三,进行增量更新,版本管理系统包含有多个基地服务器,且每一个基地服务器具有预发布区,执行发布任务前,将变更过的新代码同时下载到多个基地服务器的预发布区,新版本的web应用位于预发布区;步骤四,执行发布,预先设定的上线时间一到,则关闭版本管理系统,关闭旧版本的web应用,再发布新版本的web应用;步骤五,重启web应用,系统发布完成,速度快、占用网络带宽和磁盘少及运维成本低。

Description

基于web应用多服务器自动发布的方法
【技术领域】
本发明涉及一种基于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应用多服务器自动发布的方法,其特征在于:步骤四中,执行发布是并行的,多个基地服务器同一时间发布。
CN201910084391.2A 2019-01-29 2019-01-29 基于web应用多服务器自动发布的方法 Pending CN109905463A (zh)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112379918A (zh) * 2020-12-04 2021-02-19 北京顺达同行科技有限公司 代码发布方法、装置、计算机设备和存储介质

Citations (7)

* Cited by examiner, † Cited by third party
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项目更新方法及相关装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
陈胜林,方鹏,高玉荣: "《基于XML Web 服务的地图增量更新模型研究》", 《测绘工程》 *

Cited By (2)

* Cited by examiner, † Cited by third party
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