CN109729156B - 基于后端应用服务变更自动化调整中间件的连接方法 - Google Patents
基于后端应用服务变更自动化调整中间件的连接方法 Download PDFInfo
- Publication number
- CN109729156B CN109729156B CN201811547363.1A CN201811547363A CN109729156B CN 109729156 B CN109729156 B CN 109729156B CN 201811547363 A CN201811547363 A CN 201811547363A CN 109729156 B CN109729156 B CN 109729156B
- Authority
- CN
- China
- Prior art keywords
- service
- application
- middleware
- application service
- internal bus
- 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.)
- Active
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种基于后端应用服务变更自动化调整中间件的连接方法,包括应用端和服务端,控制应用端和服务端工作状态保持一致时两者进行通信。所述应用端为前端代理中间件,所述服务端为内部总线中间件,应用端的应用服务a和位于服务端的应用服务b工作状态保持一致时两者进行通信。前端服务以及后端服务下线并等待应用程序处理的过程,此时停止应用服务程序,对老版本程序进行备份后,更新为新版本应用程序,并启动服务;下线完成后,实施后续内部总线中间件上线环节;在内部总线中间件首先上线完成后,本系统则可以完成和内部其他系统的关联调用;在内部总线中间件上线完成后,进行后端应用服务在中间件上的服务上线环节。
Description
技术领域
本发明涉及的是一种应用程序版本变更技术,尤其涉及一种基于后端应用服务变更自动化调整中间件的连接方法。
背景技术
当前应用系统版本变更大多数为变更操作自动化,但没有整体流程的自动化。如对应用版本的备份、更新,应用服务的启停做到了自动化,但是和前端的web代理中间件、相关联的API网关都是相隔离的,并未实现整个流程的自动化。同时在变更期间,对于已接收的流量请求在未做精细化下线步骤时,会有请求丢失。随着互联网科技的发展,以及用户对应用系统的高可用性、可靠性的要求不断提高,随之也对服务器端应用程序的稳定性有了更高的要求。
目前,随着服务器端应用程序的不断增加,各种系统架构不断增多,当前的变更流程并不能对应用程序的版本变更进行高效、安全、精细化管理。当前服务器端进行版本变更时,并未对前后相关联的应用系统或入口流量请求进行隔离,没有一套完整的流量无损变更流程,通常来说,服务器端程序在应用系统变更过程中,会存在有极少部分请求由前端服务器分发到后端应用服务器后并未处理完成,而被应用变更所丢弃。为了实现保证整体流量请求不会因为应用系统版本变更而损耗的需求,需要分别对每个应用程序进行服务的手工上下线操作,增大了部署过程中的出错环节、变更时的效率低下。
发明内容
本发明的目的在于提供一种基于后端应用服务变更自动化调整中间件的连接方法,在后端应用变更过程中,可以做到流量无损变更。
为实现上述目的,本发明提供了一种基于后端应用服务变更自动化调整中间件的连接方法,当外部互联网端的请求经前端代理中间件进入后端应用服务后,所述前端代理中间件控制应用服务从外部互联网接入侧进行下线,内部总线中间件控制应用服务从内部系统调用侧下线,当应用服务的程序版本变更后,所述内部总线中间件控制变更后的应用服务从内部系统调用侧上线,所述前端代理中间件控制应用服务从外部互联网接入侧进行上线。
优选地,所述后端应用服务为应用服务a,所述内部系统调用侧包括应用服务b,所述应用服务a和所述应用服务b工作状态保持一致时应用服务a和所述应用服务b通信。
优选地,在调度开始时,先对需要进行变更的系统信息进行基本配比和环境检查。
优选地,前段代理中间件对应用服务a进行下线,停用应用服务A;再从内部总线中间件下线,进而停用应用服务B;此环境中,应用系统之间通过内部总线中间件进行HTTP方式通信;后端服务从前段代理中间件下线并等待应用程序处理的过程中,设置等待时长以使得所有已接入的请求在下线的应用系统内部处理完成;后端服务从内部总线中间件下线并等待应用程序处理的过程中,设置等待时长以使得所有已接入的请求在下线的应用系统内部处理完成;在完成所有下线任务后,停止应用服务程序,对老版本的程序进行备份;备份后,将老版本应用程序更新为新版本应用程序,并启动服务;启动服务后,实施后续内部总线中间件上线;内部总线中间件上线完成后,再进行应用端的前端代理中间件上的服务上线。
优选地,前端代理中间件下线操作完成后,需要对返回结果进行判断;下线命令发出执行后,会返回状态值,当状态值为True时,即为正常返回,则继续等待一段应用程序处理最大时长,再进行后续步骤;当状态值为False时,即为失败,则流程暂停,并需人工查看问题原因。
优选地,内部总线中间件和前端代理中间件上线之前,则开始进行应用服务的绿灯测试。
所述绿灯测试包括技术绿灯和业务绿灯两类,在技术绿灯测试中,包含应用程序的进程检查、服务监听端口状态测试。
优选地,在业务绿灯测试中,包含服务基本响应状态检查、接口返回值状态检查。
附图说明
图1为本发明基于后端应用服务变更自动化调整中间件的连接方法的原理图;
图2为本发明基于后端应用服务变更自动化调整中间件的连接方法的原理图。
具体实施方式
本发明的目的就是为了解决在变更过程中的人工进行应用服务从中间件上下线操作,而有可能引发的操作错误、效率低下的问题。本发明需要解决在变更时,中间件连接调整和应用变更的关联性及自动化调整中间件连接的问题。
如图1和图2所示,本发明的基于后端应用服务基于后端应用服务变更自动化调整中间件的连接方法中,需要自动化变更平台,中间件服务,中间件动态调整后端应用连接模块,后端应用服务以及至少一个后端应用自动化变更流程的运行环境中。中间件动态调整后端应用连接模块提供服务发现、健康检查、键值存储、多数据中心功能和接收外部请求,修改后端服务主机ip信息的接口功能。自动化变更平台实现自动化变更流程调度与检查功能。
本发明的基于后端应用服务变更自动化调整中间件的连接方法,当外部互联网端的请求经前端代理中间件1进入后端应用服务后,所述前端代理中间件1控制应用服务从外部互联网接入侧进行下线,内部总线中间件4控制应用服务从内部系统调用侧下线,当应用服务的程序版本变更后,所述内部总线中间件4控制变更后的应用服务从内部系统调用侧上线,所述前端代理中间件1控制应用服务从外部互联网接入侧进行上线。
位于应用端的应用服务为应用服务a,位于服务端的应用服务为应用服务b,该应用端的应用服务a(参见附图标记2)和服务端的应用服务b(参见附图标记3)工作状态保持一致时两者进行通信。
应用端的应用服务a和位于服务端的应用服务b通过所述位于应用端前端代理中间件1和位于服务端的内部总线中间件4进行连接和控制。
根据已经制定的各变更关键节点,由自动化流程机器发起整个流程进行调度。调用开始时,先对需要进行变更的系统信息进行基本配比和环境检查,如变更系统服务状态、网络是否可达。
接下来会首先进入前端代理中间件1对后端服务进行下线,此时内部总线中间件4并不下线,前段代理中间件对应用服务a进行下线,停用应用服务A;再从内部总线中间件4下线,进而停用应用服务B。在一些实施例中,在前端代理中间件1下线操作完成后,需要对返回结果进行判断,所述判断通过返回状态值做出,当状态值为True时,即为正常返回,则继续等待一段应用程序处理最大时长,再进行后续步骤;当状态值为False时,即为失败,则流程暂停,并需人工查看问题原因。
此环境中,应用系统之间通过内部总线中间件4进行HTTP方式通信。在一些实施例中,后端服务从前端代理中间件1下线并等待应用程序处理的过程中,设置等待时长,以使得所有已接入的请求在下线的应用系统内部处理完成。在一些实施例中,后端服务从内部总线中间件4下线并等待应用程序处理的过程中,同样设置等待时长,以使得所有已接入的请求在下线的应用系统内部处理完成;此过程中,应用系统之间内部不直接互连,而是通过内部总线中间件4进行HTTP方式通信。
在一些实施例中,在内部总线中间件4下线操作完成后,同样需要对返回结果进行判断,所述判断通过返回状态值做出,当状态值为True时,即为正常返回,则继续等待一段应用程序处理最大时长,再进行后续步骤;当状态值为False时,即为失败,则流程暂停,并需人工查看问题原因。
在完成所有下线任务后,停止应用服务程序,对老版本的程序进行备份;备份后,将老版本应用程序更新为新版本应用程序,并启动服务;启动服务后,实施后续内部总线中间件4上线。在一些实施例中,服务被启动后,则开始进行应用服务的绿灯测试内容。绿灯测试可涵盖为技术绿灯和业务绿灯两类。在技术绿灯测试中,包含应用程序的进程检查、服务监听端口状态等基本技术项内容。在业务绿灯测试中,包含服务基本响应状态检查、接口返回值状态检查等基本业务项内容。
在绿灯测试通过的情况下,即认为应用服务变更成功,可实施后续内部总线中间件4上线环节。
内部总线中间件4对后端应用连接上线,内部总线中间件4上线完成后,本系统则可以完成和内部其他系统的关联调用;再进行应用端的前端代理中间件1上的服务上线。总之,对于下线的过程,前端代理中间件1先于内部总线中间件4下线,而在上线过程中,顺序为内部总线中间件4先上线,前端代理中间件1后于内部总线中间件4上线。
综上所述,本发明的基于后端应用服务变更自动化调整中间件的连接方法,服务的变更和下线/注册均由系统自动生成,无需应用开发者和运维人员进行任何手工处理的配合工作,只需要在自动化变更流程定制过程中,对每个操作步骤节点进行顺序化处理与相应判断,便可完成整个流程实施,简化了系统变更过程中人工参与的复杂度,从而有效提高部署效率,降低人力成本,真正实现了全链路的无损变更流程。在未使用自动化调整中间件连接的方法前,每次变更时,如有三台中间件服务器需要进行连接调整,则需要手工参与六次上线和下线操作。而使用本发明后,仅需要启动应用变更流程,即可自动化进行中间件连接调整。
Claims (6)
1.一种基于后端应用服务变更自动化调整中间件的连接方法,其特征在于,当外部互联网端的请求经前端代理中间件进入后端应用服务后,所述前端代理中间件控制应用服务从外部互联网接入侧进行下线,内部总线中间件控制应用服务从内部系统调用侧下线,当应用服务的程序版本变更后,所述内部总线中间件控制变更后的应用服务从内部系统调用侧上线,所述前端代理中间件控制应用服务从外部互联网接入侧进行上线;前段代理中间件对应用服务a进行下线,停用应用服务A;再从内部总线中间件下线,进而停用应用服务B;
此环境中,应用系统之间通过内部总线中间件进行HTTP方式通信;
后端服务从前段代理中间件下线并等待应用程序处理的过程中,设置等待时长以使得所有已接入的请求在下线的应用系统内部处理完成;
后端服务从内部总线中间件下线并等待应用程序处理的过程中,设置等待时长以使得所有已接入的请求在下线的应用系统内部处理完成;在完成所有下线任务后,停止应用服务程序,对老版本的程序进行备份;备份后,将老版本应用程序更新为新版本应用程序,并启动服务;启动服务后,实施后续内部总线中间件上线;内部总线中间件上线完成后,再进行应用端的前端代理中间件上的服务上线;
前端代理中间件下线操作完成后,需要对返回结果进行判断;下线命令发出执行后,会返回状态值,当状态值为True时,即为正常返回,则继续等待一段应用程序处理最大时长,再进行后续步骤;当状态值为False时,即为失败,则流程暂停。
2.根据权利要求1所述的基于后端应用服务变更自动化调整中间件的连接方法,其特征在于,所述后端应用服务为应用服务a,所述内部系统调用侧包括应用服务b,所述应用服务a和所述应用服务b工作状态保持一致时应用服务a和所述应用服务b通信。
3.根据权利要求1所述的基于后端应用服务变更自动化调整中间件的连接方法,其特征在于,在调度开始时,先对需要进行变更的系统信息进行基本配比和环境检查。
4.根据权利要求3所述的基于后端应用服务变更自动化调整中间件的连接方法,其特征在于,内部总线中间件和前端代理中间件上线之前,则开始进行应用服务的绿灯测试。
5.根据权利要求4所述的基于后端应用服务变更自动化调整中间件的连接方法,其特征在于,所述绿灯测试包括技术绿灯和业务绿灯两类,在技术绿灯测试中,包含应用程序的进程检查、服务监听端口状态测试。
6.根据权利要求4所述的基于后端应用服务变更自动化调整中间件的连接方法,其特征在于,在业务绿灯测试中,包含服务基本响应状态检查、接口返回值状态检查。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811547363.1A CN109729156B (zh) | 2018-12-18 | 2018-12-18 | 基于后端应用服务变更自动化调整中间件的连接方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811547363.1A CN109729156B (zh) | 2018-12-18 | 2018-12-18 | 基于后端应用服务变更自动化调整中间件的连接方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109729156A CN109729156A (zh) | 2019-05-07 |
CN109729156B true CN109729156B (zh) | 2021-12-28 |
Family
ID=66296837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811547363.1A Active CN109729156B (zh) | 2018-12-18 | 2018-12-18 | 基于后端应用服务变更自动化调整中间件的连接方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109729156B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110311833B (zh) * | 2019-06-27 | 2021-06-15 | 北京创鑫旅程网络技术有限公司 | 供应商服务的检测方法、装置、电子设备和存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018128850A1 (en) * | 2017-01-06 | 2018-07-12 | Oracle International Corporation | Compression and secure, end-to-end encrypted, zfs cloud storage |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100395707C (zh) * | 2006-02-07 | 2008-06-18 | 华为技术有限公司 | 升级程序的方法 |
EP2800332B1 (en) * | 2013-05-02 | 2018-07-04 | Alcatel Lucent | Seamlessly enabling privacy in online recommendation services |
CN104283878B (zh) * | 2014-09-30 | 2018-01-19 | 深圳万兴信息科技股份有限公司 | 基于云服务的安全型移动终端及其访问云服务器的方法 |
CN104657174A (zh) * | 2015-02-03 | 2015-05-27 | 百度在线网络技术(北京)有限公司 | 一种用于动态实现应用功能的方法和装置 |
CN105740019A (zh) * | 2016-01-29 | 2016-07-06 | 公安部交通管理科学研究所 | 分布式网络环境下应用软件自动升级发布系统及方法 |
-
2018
- 2018-12-18 CN CN201811547363.1A patent/CN109729156B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018128850A1 (en) * | 2017-01-06 | 2018-07-12 | Oracle International Corporation | Compression and secure, end-to-end encrypted, zfs cloud storage |
Non-Patent Citations (2)
Title |
---|
Fast Efficient Design of Shared Backup Path Protected Networks Using a Multi-Flow Optimization Model;Brody Todd;《IEEE Transactions on Reliability》;20111013;全文 * |
移动通信集客业务开通支撑系统的分析和设计;汪波;《信息科技辑》;20130715;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109729156A (zh) | 2019-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9929916B1 (en) | Achieving stateful application software service behavior in distributed stateless systems | |
CN105245373B (zh) | 一种容器云平台系统的搭建及运行方法 | |
CN112491606B (zh) | 一种基于ansible的自动化部署业务系统高可用集群的方法 | |
US8301935B2 (en) | Distributed batch runner | |
CN100511274C (zh) | 批量作业集中管理和调度的系统及方法 | |
US20070006207A1 (en) | Method and system for providing device-initiated software upgrades | |
US20070033284A1 (en) | System server for data processing with multiple clients and a data processing method | |
CN106681924A (zh) | 一种软件测试方法及系统 | |
CN102254031A (zh) | 基于批处理请求的Microsoft SQL Server数据库集群 | |
CN107483297B (zh) | 对嵌入式设备上所承载业务质量的主动监测系统及方法 | |
CN103139245A (zh) | 网元升级方法及装置 | |
CN103516735A (zh) | 一种网络节点升级的方法及装置 | |
CN108833565A (zh) | 一种监控服务器的方法、装置、服务器和存储介质 | |
CN109729156B (zh) | 基于后端应用服务变更自动化调整中间件的连接方法 | |
CN113127023B (zh) | 业务升级的方法、装置和系统 | |
CN115514667A (zh) | 接入服务处理方法、系统、装置、电子设备以及存储介质 | |
CN109586946B (zh) | 异常处理方法、装置及计算机可读存储介质 | |
KR100619424B1 (ko) | 동적 번랙 모니터 리스너 서버 | |
CN104158906A (zh) | 一种服务器代理操控系统及操控方法 | |
CN115102999B (zh) | DevOps系统、服务提供方法、存储介质和电子装置 | |
CN114244678A (zh) | 多协议告警设备接入方法及系统 | |
CN100502318C (zh) | 网元设备接入网管系统时的兼容性检测方法及网管系统 | |
WO2022109525A1 (en) | Preserving persistent link connections during a cloud-based service system upgrade | |
CN107370612B (zh) | 一种网络质量管理系统检测任务调度方法、装置 | |
CN110262882A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |