CN110928568A - 一种发布更新web应用程序时业务服务不间断的方法 - Google Patents

一种发布更新web应用程序时业务服务不间断的方法 Download PDF

Info

Publication number
CN110928568A
CN110928568A CN201911070747.3A CN201911070747A CN110928568A CN 110928568 A CN110928568 A CN 110928568A CN 201911070747 A CN201911070747 A CN 201911070747A CN 110928568 A CN110928568 A CN 110928568A
Authority
CN
China
Prior art keywords
nginx
tomcat
service request
main
service
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.)
Granted
Application number
CN201911070747.3A
Other languages
English (en)
Other versions
CN110928568B (zh
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.)
Hangzhou Yike Information Technology Co Ltd
Original Assignee
Hangzhou Yike Information 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 Hangzhou Yike Information Technology Co Ltd filed Critical Hangzhou Yike Information Technology Co Ltd
Priority to CN201911070747.3A priority Critical patent/CN110928568B/zh
Publication of CN110928568A publication Critical patent/CN110928568A/zh
Application granted granted Critical
Publication of CN110928568B publication Critical patent/CN110928568B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供一种发布更新web应用程序时业务服务不间断的方法,包括如下步骤:S1)主nginx收到业务请求后分配给后端其中一个tomcat;S2)若发给正在发版的tomcat,其防火墙将该业务请求转发到一个专门产生状态码502的nginx;S3)专门产生状态码502的nginx将状态码502原路返回给正在发版的tomcat的主机防火墙,防火墙再原路返回给主nginx;S4)主nginx收到状态码502后,将业务请求发给下一个tomcat,若下一个tomcat正在发版,则重复步骤S2)至S4),否则该tomcat正常处理业务请求;S5)正常处理业务请求的tomcat将处理结果反馈给主nginx,主nginx将处理结果反馈给客户端。本发明的优点为:简单高效,不影响业务请求。

Description

一种发布更新web应用程序时业务服务不间断的方法
技术领域
本发明涉及web应用程序开发升级技术领域,具体涉及一种发布更新web应用程序时业务服务不间断的方法。
背景技术
随着互联网技术的更新换代,Web应用程序也在不断地开发升级。Web应用程序在升级时,客户的web访问还在持续不断,这就需要业务不间断的web发布更新。
目前,web应用程序服务器使用较多的是tomcat,负载均衡用的是nginx。负载均衡是建立在网络结构之上、扩展网络设备和服务器的带宽、增加吞吐量、增加数据处理、提高灵活性的设备,负载均衡将业务请求分配给空闲的tomcat。现有技术中用来实现业务不间断的web发布更新的方法有两种:一种是更改nginx的后端配置,把要发版的tomcat暂时隔离,发版完成后再加上;另一种是发版时重启web应用程序,动态检测后端服务器的健康情况,检测到不健康的服务器就自动隔离。第一种现有技术需更改nginx的配置,更改后还需重启nginx;第二种现有技术一般采用轮循的方式检测,会有滞后性,影响一部分业务请求。
发明内容
本发明的目的是提供一种无需更改、重启nginx、无需检测、没有滞后性的发布更新web应用程序时业务服务不间断的方法。
为了达到上述目的,本发明通过以下技术方案来实现:
一种发布更新web应用程序时业务服务不间断的方法,包括如下步骤:
S1)主nginx收到业务请求后分配给后端其中一个tomcat;
S2)若发给正在发版的tomcat,其防火墙将该业务请求转发到一个专门产生状态码502的nginx;
S3)专门产生状态码502的nginx将状态码502原路返回给正在发版的tomcat的主机防火墙,防火墙再原路返回给主nginx;
S4)主nginx收到状态码502后,将业务请求发给下一个tomcat,若下一个tomcat正在发版,则重复步骤S2)至S4),否则该tomcat正常处理业务请求;
S5)正常处理业务请求的tomcat将处理结果反馈给主nginx,主nginx将处理结果反馈给客户端。
本发明与现有技术相比,具有以下优点:
本发明一种发布更新web应用程序时业务服务不间断的方法,简单高效;不需要临时更改nginx的配置,也不需要重启nginx;部署简单,不需要额外增加类似健康检查的模块;动态转发,每一环节网络都畅通,不会出现超时等响应慢的情况,不影响业务请求。
附图说明
图1是本发明一种发布更新web应用程序时业务服务不间断的方法的过程处理示意图。
具体实施方式
下面结合附图,对本发明的实施例作进一步详细的描述。
一种发布更新web应用程序时业务服务不间断的方法,包括如下步骤:
S1)主nginx收到业务请求后分配给后端其中一个tomcat;
S2)若发给正在发版的tomcat,其防火墙将该业务请求转发到一个专门产生状态码502的nginx;
S3)专门产生状态码502的nginx将状态码502原路返回给正在发版的tomcat的主机防火墙,防火墙再原路返回给主nginx;
S4)主nginx收到状态码502后,将业务请求发给下一个tomcat,若下一个tomcat正在发版,则重复步骤S2)至S4),否则该tomcat正常处理业务请求;
S5)正常处理业务请求的tomcat将处理结果反馈给主nginx,主nginx将处理结果反馈给客户端。
如图1所示,在发布更新web应用程序时,业务服务的具体流程如下:
1、客户端将业务请求发给主nginx;
2、主nginx将业务请求分配给后端的tomcat1;
3、tomcat1正在发版,其防火墙将该业务请求转发给一个专门产生状态码502的nginx;
4、专门产生状态码502的nginx接收业务请求后发送状态码502给tomcat1的主机防火墙;
5、tomcat1的防火墙将状态码502发送给主nginx;
6、主nginx接收状态码502后将业务请求分配给tomcat2;
7、tomcat2没有发版,处理业务请求并将处理结果返回给主nginx;
8、主nginx将处理结果反馈给客户端。
以上所述仅是本发明优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明构思的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明保护范围内。

Claims (1)

1.一种发布更新web应用程序时业务服务不间断的方法,其特征在于包括如下步骤:
S1)主nginx收到业务请求后分配给后端其中一个tomcat;
S2)若发给正在发版的tomcat,其防火墙将该业务请求转发到一个专门产生状态码502的nginx;
S3)专门产生状态码502的nginx将状态码502原路返回给正在发版的tomcat的主机防火墙,防火墙再原路返回给主nginx;
S4)主nginx收到状态码502后,将业务请求发给下一个tomcat,若下一个tomcat正在发版,则重复步骤S2)至S4),否则该tomcat正常处理业务请求;
S5)正常处理业务请求的tomcat将处理结果反馈给主nginx,主nginx将处理结果反馈给客户端。
CN201911070747.3A 2019-11-05 2019-11-05 一种发布更新web应用程序时业务服务不间断的方法 Active CN110928568B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911070747.3A CN110928568B (zh) 2019-11-05 2019-11-05 一种发布更新web应用程序时业务服务不间断的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911070747.3A CN110928568B (zh) 2019-11-05 2019-11-05 一种发布更新web应用程序时业务服务不间断的方法

Publications (2)

Publication Number Publication Date
CN110928568A true CN110928568A (zh) 2020-03-27
CN110928568B CN110928568B (zh) 2022-07-26

Family

ID=69852356

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911070747.3A Active CN110928568B (zh) 2019-11-05 2019-11-05 一种发布更新web应用程序时业务服务不间断的方法

Country Status (1)

Country Link
CN (1) CN110928568B (zh)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404339A (zh) * 2011-12-16 2012-04-04 山石网科通信技术(北京)有限公司 防火墙系统和基于该防火墙系统的数据处理方法
CN105100232A (zh) * 2015-07-14 2015-11-25 焦点科技股份有限公司 一种不中断服务的服务端程序平滑升级的方法
CN105939313A (zh) * 2015-09-01 2016-09-14 杭州迪普科技有限公司 状态码重定向方法及装置
CN105978734A (zh) * 2016-06-30 2016-09-28 北京海鑫智圣技术有限公司 一种身份核验系统、身份核验系统的热替换方法及系统
US20170034023A1 (en) * 2015-07-27 2017-02-02 Datagrid Systems, Inc. Techniques for evaluating server system reliability, vulnerability and component compatibility using crowdsourced server and vulnerability data
CN106775775A (zh) * 2017-01-24 2017-05-31 深圳市启仑智能科技有限公司 一种基于OpenResty的高性能MVC框架
CN107426341A (zh) * 2017-09-13 2017-12-01 北京智芯微电子科技有限公司 App与服务端交互的系统及方法
CN107465756A (zh) * 2017-08-24 2017-12-12 北京奇艺世纪科技有限公司 一种服务请求处理的方法和装置
US20180039494A1 (en) * 2016-08-05 2018-02-08 Oracle International Corporation Zero down time upgrade for a multi-tenant identity and data security management cloud service
CN108076091A (zh) * 2016-11-14 2018-05-25 北京京东尚科信息技术有限公司 用于应用程序发版的方法和系统
CN108282517A (zh) * 2017-12-21 2018-07-13 福建天泉教育科技有限公司 一种web服务升级的方法及终端
CN109587102A (zh) * 2017-09-29 2019-04-05 北京上元信安技术有限公司 一种Web应用防火墙、防护系统及访问方法
CN109905410A (zh) * 2019-04-17 2019-06-18 北京搜狐新媒体信息技术有限公司 Web应用安全防护方法与Web应用防火墙系统
CN110247823A (zh) * 2019-06-13 2019-09-17 北京奇艺世纪科技有限公司 一种故障检测方法、装置及相关设备

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102404339A (zh) * 2011-12-16 2012-04-04 山石网科通信技术(北京)有限公司 防火墙系统和基于该防火墙系统的数据处理方法
CN105100232A (zh) * 2015-07-14 2015-11-25 焦点科技股份有限公司 一种不中断服务的服务端程序平滑升级的方法
US20170034023A1 (en) * 2015-07-27 2017-02-02 Datagrid Systems, Inc. Techniques for evaluating server system reliability, vulnerability and component compatibility using crowdsourced server and vulnerability data
CN105939313A (zh) * 2015-09-01 2016-09-14 杭州迪普科技有限公司 状态码重定向方法及装置
CN105978734A (zh) * 2016-06-30 2016-09-28 北京海鑫智圣技术有限公司 一种身份核验系统、身份核验系统的热替换方法及系统
US20180039494A1 (en) * 2016-08-05 2018-02-08 Oracle International Corporation Zero down time upgrade for a multi-tenant identity and data security management cloud service
CN108076091A (zh) * 2016-11-14 2018-05-25 北京京东尚科信息技术有限公司 用于应用程序发版的方法和系统
CN106775775A (zh) * 2017-01-24 2017-05-31 深圳市启仑智能科技有限公司 一种基于OpenResty的高性能MVC框架
CN107465756A (zh) * 2017-08-24 2017-12-12 北京奇艺世纪科技有限公司 一种服务请求处理的方法和装置
CN107426341A (zh) * 2017-09-13 2017-12-01 北京智芯微电子科技有限公司 App与服务端交互的系统及方法
CN109587102A (zh) * 2017-09-29 2019-04-05 北京上元信安技术有限公司 一种Web应用防火墙、防护系统及访问方法
CN108282517A (zh) * 2017-12-21 2018-07-13 福建天泉教育科技有限公司 一种web服务升级的方法及终端
CN109905410A (zh) * 2019-04-17 2019-06-18 北京搜狐新媒体信息技术有限公司 Web应用安全防护方法与Web应用防火墙系统
CN110247823A (zh) * 2019-06-13 2019-09-17 北京奇艺世纪科技有限公司 一种故障检测方法、装置及相关设备

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
HAI-WU LEE: "Design of IE Laboratory Dynamic Website", 《2019 IEEE INTERNATIONAL CONFERENCE OF INTELLIGENT APPLIED SYSTEMS ON ENGINEERING (ICIASE)》 *
任世宗等: "基于Nginx的可扩展负载均衡Web站点部署", 《中国教育网络》 *
黄静等: "基于Nginx的Web服务器性能优化研究", 《浙江理工大学学报(自然科学版)》 *

Also Published As

Publication number Publication date
CN110928568B (zh) 2022-07-26

Similar Documents

Publication Publication Date Title
CN107590001B (zh) 负载均衡方法及装置、存储介质、电子设备
US10187445B2 (en) System, method and browser client for enabling browser data synchronization
JP3980596B2 (ja) サーバを遠隔かつ動的に構成する方法およびシステム
US7318148B2 (en) Automatically configuring a computer
US7188214B1 (en) Efficient compression using differential caching
US20030140115A1 (en) System and method for using virtual directories to service URL requests in application servers
EP2044749B1 (en) Dispatching request fragments from a response aggregating surrogate
CN112424746A (zh) 服务网格内的原位触发的功能即服务
JP2006502465A (ja) コンテンツ配信ネットワーク(CDN)で使用するためのJavaアプリケーションフレームワーク
US20150188999A1 (en) System and method to extend the capabilities of a web browser to improve the web application performance
US7793113B2 (en) Guaranteed deployment of applications to nodes in an enterprise
US10404568B2 (en) Agent manager for distributed transaction monitoring system
US20040268344A1 (en) Centrally managed and distributed applications
CN115668894A (zh) 被配置为服务多个单页应用的服务工作器
CN110830374A (zh) 一种基于sdk的灰度发布的方法和装置
CN112948498A (zh) 一种分布式系统全局标识的生成方法和装置
CN108989420B (zh) 注册服务的方法及系统、调用服务的方法及系统
US20070055663A1 (en) Programmatic response for detected variants of HTTP requests
CN110730197B (zh) 一种服务发现方法和系统
CN112527376B (zh) 基于反向代理服务实现DevOps自动化的方法
CN110928568B (zh) 一种发布更新web应用程序时业务服务不间断的方法
CN111343220B (zh) 转发器、分布式文件传输方法、系统、介质及电子设备
US12028434B2 (en) Generating early hints informational responses at an intermediary server
US20030145048A1 (en) System and method for HTTP request preprocessing for servlets and application servers
CN114115941A (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
CB02 Change of applicant information
CB02 Change of applicant information

Address after: Room 523, 5 / F, building 1, Tianda building, No. 180, Gen Shan Dong Road, Jianggan District, Hangzhou City, Zhejiang Province 310000

Applicant after: Hangzhou Yike Information Technology Co.,Ltd.

Address before: 310000 16th floor, building 1, Xingqi building, 1916 Jiangling Road, Binjiang District, Hangzhou City, Zhejiang Province

Applicant before: Hangzhou Yike Information Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder
CP02 Change in the address of a patent holder

Address after: Room 901, Floor 9, Building 1, No. 239, Sansheng Street, Qiaosi Street, Linping District, Hangzhou City, Zhejiang Province, 310000

Patentee after: Hangzhou Yike Information Technology Co.,Ltd.

Address before: Room 523, 5 / F, building 1, Tianda building, No. 180, Gen Shan Dong Road, Jianggan District, Hangzhou City, Zhejiang Province 310000

Patentee before: Hangzhou Yike Information Technology Co.,Ltd.