Cloud uninterrupted service upgrading method and device
By diverting terminal requests to update services and continuously increasing request traffic, combined with A/B testing and grayscale release, the problem of users not perceived when updating cloud services is solved, the stability and reliability of cloud services are achieved, and the service is ensured. no sense upgrades and high availability.
Patent Information
- Application Number
- CN202411147683.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-21
- Publication Date
- 2024-12-13
AI Technical Summary
The prior art cannot update cloud services without the user's perception, making it difficult to guarantee the stability and reliability of the online software warehouse system.
By diverting terminal requests to the update service, testing and continuously increasing request traffic until all terminal requests are migrated to the update service, combining A/B testing and grayscale release, ensuring the stability of the update service under different loads.
It realizes the unaware upgrade of cloud services, detects the processing capabilities of update services at various request load levels, avoids denial of service, and provides more powerful cloud functions and faster business development and integration.
Smart Images

Figure CN119127266A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of cloud service, and in particular to a method and device for upgrading uninterrupted cloud service. Background Art
[0002] The scope of application use is constantly expanding, and the types of business are increasing. Software is usually in a highly integrated state. The installation and upgrade operations that need to be completed for application software are often very complicated. In order to achieve continuous online services for application software, there are high requirements for the stability and reliability of the online software warehouse system.
[0003] In the related art, it is impossible to update cloud services without the user's awareness. Summary of the invention
[0004] The main purpose of the present invention is to provide a method and device for uninterrupted cloud service upgrade to solve the problems existing in the related technology.
[0005] In order to achieve the above-mentioned purpose, according to the first aspect of the present invention, a method and device for uninterrupted service upgrade in the cloud are provided, wherein the method includes diverting the acquired terminal request to the update service to determine the test result of the update service under the diverted load; if the test result is passed, the request traffic is continuously increased.
[0006] Optionally, when determining the test results of the update service under different load requests, an A / B test method is used, wherein A is the old version of the service and B is the new version of the service, namely the update service.
[0007] Optionally, the method further includes: continuously increasing the request flow until all terminal requests are migrated to the update service.
[0008] Optionally, if the test result is passed, continuously increasing the request traffic includes: if the test result is passed, forwarding the remaining terminal requests to the update service; testing the update service under the load after the directed forwarding; if the test passes, continuing to forward the terminal requests to the update service.
[0009] According to a second aspect of the present invention, a cloud-based uninterrupted service upgrade device is provided, comprising a diversion unit, configured to divert acquired terminal requests to an update service; a testing unit, configured to determine a test result of the update service under the diverted load; and a traffic increasing unit, configured to continuously increase the request traffic if the test result is a pass.
[0010] Optionally, when determining the test results of the update service under different load requests, an A / B test method is used, wherein A is the old version of the service and B is the new version of the service, namely the update service.
[0011] Optionally, the device continues to increase the request flow until all terminal requests are migrated to the update service.
[0012] Optionally, if the test result is passed, continuously increasing the request traffic includes: if the test result is passed, forwarding the remaining terminal requests to the update service; testing the update service under the load after the directed forwarding; if the test passes, continuing to forward the terminal requests to the update service.
[0013] According to a third aspect of the present invention, there is provided a computer-readable storage medium storing computer instructions, wherein the computer instructions are used to cause the computer to execute the method described in any one of the implementations of the first aspect.
[0014] According to a fourth aspect of the present invention, there is provided an electronic device comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor executes the method described in any one implementation of the first aspect.
[0015] The present embodiment provides a method and device for uninterrupted cloud service upgrades, wherein the method includes diverting the acquired terminal requests to the update service to determine the test result of the update service under the diverted load; if the test result is passed, the request traffic is continuously increased. By diverting the terminal requests of existing users to the update service, the capacity test of the update service under different request loads is completed. The request traffic processed by the update service increases continuously from zero until it meets the existing request load requirements. It can not only detect the processing capacity of the update service under various request load levels, but also shield the denial of service caused by the instantaneous influx of requests, thereby realizing a seamless upgrade of cloud services. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0017] Figure 1 is a flow chart of a method for upgrading cloud-based uninterrupted services according to an embodiment of the present invention;
[0018] Figure 2 is a schematic diagram of an electronic device according to an embodiment of the present invention. DETAILED DESCRIPTION
[0019] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.
[0020] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so as to describe the embodiments of the present invention described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0021] It should be noted that, in the absence of conflict, the embodiments of the present invention and the features in the embodiments can be combined with each other. The present invention will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.
[0022] According to an embodiment of the present invention, there is provided a Figure 1 As shown, it includes the following steps 101 to 102:
[0023] Step 101: Divert the acquired terminal request to the update service to determine the test result of the update service under the diverted load;
[0024] Step 102: If the test result is passed, the request flow rate is continuously increased.
[0025] In this embodiment, the uninterrupted and service upgrade technology of cloud services is applied to achieve the ability to update cloud services without user perception while providing continuous and uninterrupted services, and to achieve automatic updates of cloud services, thereby providing users with more powerful cloud functions and accelerating the development and integration of more businesses.
[0026] As an optional implementation method of this embodiment, when determining the test results of the update service under different load requests, it is determined through an A / B test method, wherein A is the old version of the service and B is the new version of the service, namely the update service.
[0027] In this optional implementation, based on the grayscale release version upgrade, some users continue to use version A (old version) and some users start using version B (new version). If users have no objection to version B, then gradually expand the scope and migrate all users to version B. Grayscale release can ensure the stability of the overall system, and problems can be discovered and adjusted during the initial grayscale release to ensure their impact. Through the above A / B testing process, problems when releasing new versions can be effectively avoided, and it also creates the possibility of version rollback and smooth transition.
[0028] As an optional implementation manner of this embodiment, the method further includes: continuously increasing the request flow until all terminal requests are migrated to the update service.
[0029] As an optional implementation method of this embodiment, if the test result is passed, continuously increasing the request traffic includes: if the test result is passed, forwarding the remaining terminal requests to the update service in a directed manner; testing the update service under the load after directed forwarding; if the test passes, continuing to forward the terminal requests to the update service in a directed manner.
[0030] In the above optional implementation, the smooth cloud migration and amplification of applications that are adapted to grayscale releases supports uninterrupted online upgrades of services. Through request diversion technology, the directional forwarding of terminal application requests is completed while the updated service is still online. The upgrade of system cloud services is an ongoing process. By diverting the terminal requests of existing users to the update service, the capacity test of the update service under different request loads is completed. The request flow processed by the update service increases continuously from zero until it meets the existing request load requirements. It can not only detect the processing capacity of the update service at each request load level, but also shield the denial of service caused by the instantaneous influx of requests.
[0031] Furthermore, by using cloud services, through technical means such as dynamic expansion of the number of service nodes, request load balancing, operation monitoring, and traffic adjustment, the operating status of cloud services can be monitored in real time, the access requests sent by terminals can be reasonably allocated, and the service support capabilities can be enhanced by dynamically adding service nodes and adjusting traffic.
[0032] In this embodiment, the uninterrupted and service upgrade technology of cloud services is applied to achieve the ability to update cloud services without user perception while providing continuous and uninterrupted services, and to achieve automatic updates of cloud services, thereby providing users with more powerful cloud functions and accelerating the development and integration of more businesses.
[0033] It should be noted that the steps shown in the flowcharts of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and that, although a logical order is shown in the flowcharts, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0034] The present invention also provides a cloud-based uninterrupted service upgrade device, including a diversion unit, configured to divert the acquired terminal request to the update service; a testing unit, configured to determine the test result of the update service under the diverted load; and a traffic increasing unit, configured to continuously increase the request traffic if the test result is passed.
[0035] As an optional implementation method of this embodiment, when determining the test results of the update service under different load requests, it is determined through an A / B test method, wherein A is the old version of the service and B is the new version of the service, namely the update service.
[0036] As an optional implementation of this embodiment, the device continuously increases the request flow until all terminal requests are migrated to the update service.
[0037] As an optional implementation method of this embodiment, if the test result is passed, continuously increasing the request traffic includes: if the test result is passed, forwarding the remaining terminal requests to the update service in a directed manner; testing the update service under the load after directed forwarding; if the test passes, continuing to forward the terminal requests to the update service in a directed manner.
[0038] According to an embodiment of the present invention, the present invention also provides an electronic device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can implement the object method described in any of the above embodiments when executing.
[0039] According to an embodiment of the present invention, the present invention further provides a readable storage medium, which stores computer instructions, and the computer instructions are used to enable a computer to implement the method described in any of the above embodiments when executed.
[0040] According to an embodiment of the present invention, the present invention further provides a computer program product, which can implement the method described in any of the above embodiments when executed by a processor.
[0041] Figure 2 A schematic block diagram of an example electronic device 300 that can be used to implement an embodiment of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices, and other similar computing devices.
[0042] like Figure 2 As shown, the device 300 includes a computing unit 301, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 302 or a computer program loaded from a storage unit 308 into a random access memory (RAM) 303. In the RAM 303, various programs and data required for the operation of the device 300 can also be stored. The computing unit 301, the ROM 302, and the RAM 303 are connected to each other via a bus 304. An input / output (I / O) interface 305 is also connected to the bus 304.
[0043] A number of components in the device 300 are connected to the I / O interface 305, including: an input unit 306, such as a keyboard, a mouse, etc.; an output unit 307, such as various types of displays, speakers, etc.; a storage unit 308, such as a disk, an optical disk, etc.; and a communication unit 309, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 309 allows the device 300 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.
[0044] The computing unit 301 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 301 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 301 performs the various methods and processes described above, such as the object matching method. For example, in some embodiments, the object matching method may be implemented as a computer software program, which is tangibly included in a machine-readable medium, such as a storage unit 308. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 300 via the ROM 302 and / or the communication unit 309. When the computer program is loaded into the RAM 303 and executed by the computing unit 301, one or more steps of the method described above may be performed.
[0045] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include: being implemented in one or more computer programs, which may be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general programmable processor, which may receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0046] The program code for implementing the method of the present invention can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code can be executed entirely on the machine, partially on the machine, partially on the machine as a stand-alone software package and partially on a remote machine, or entirely on a remote machine or server.
[0047] In the context of the present invention, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
Claims
1. A method for upgrading cloud-based uninterrupted services, characterized in that: include: Divert the acquired terminal request to the update service to determine the test result of the update service under the diverted load; If the test result is passed, the request flow is continuously increased.
2. The method for upgrading cloud-based uninterrupted services according to claim 1, characterized in that: When determining the test results of the update service under different load requests, it is determined through an A / B test method, wherein A is the old version of the service, and B is the new version of the service, namely the update service.
3. The method for upgrading cloud-based uninterrupted services according to claim 1, characterized in that: The method further comprises: The request flow is continuously increased until all terminal requests are migrated to the update service.
4. The method for upgrading cloud-based uninterrupted services according to claim 1, characterized in that: If the test result is passed, the request traffic is continuously increased to include: If the test result is passed, the remaining terminal requests are directed to the update service; Test the update service under load after directed forwarding; If the test passes, the terminal request will continue to be forwarded to the update service.
5. A cloud-based uninterrupted service upgrade device, characterized in that: include: A diversion unit, configured to divert the acquired terminal request to the update service; A testing unit configured to determine a test result of the update service under the offloaded load; The flow increasing unit is configured to continuously increase the request flow if the test result is passed.
6. The device for uninterrupted cloud service upgrade according to claim 5, characterized in that: When determining the test results of the update service under different load requests, it is determined through an A / B test method, wherein A is the old version of the service, and B is the new version of the service, namely the update service.
7. The device for uninterrupted cloud service upgrade according to claim 5, characterized in that: The device continues to increase the request flow until all terminal requests are migrated to the update service.
8. The device for uninterrupted cloud service upgrade according to claim 5, characterized in that: If the test result is passed, the request traffic is continuously increased to include: If the test result is passed, the remaining terminal requests are directed to the update service; Test the update service under load after directed forwarding; If the test passes, the terminal request will continue to be forwarded to the update service.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable the computer to execute the method according to any one of claims 1 to 4.
10. An electronic device, characterized in that: include: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor executes the method described in any one of claims 1 to 4.
