CN107656748B - Application publishing method and device - Google Patents

Application publishing method and device Download PDF

Info

Publication number
CN107656748B
CN107656748B CN201710805790.4A CN201710805790A CN107656748B CN 107656748 B CN107656748 B CN 107656748B CN 201710805790 A CN201710805790 A CN 201710805790A CN 107656748 B CN107656748 B CN 107656748B
Authority
CN
China
Prior art keywords
application
copy
controller
version
container
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
Application number
CN201710805790.4A
Other languages
Chinese (zh)
Other versions
CN107656748A (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 Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke 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 Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201710805790.4A priority Critical patent/CN107656748B/en
Publication of CN107656748A publication Critical patent/CN107656748A/en
Application granted granted Critical
Publication of CN107656748B publication Critical patent/CN107656748B/en
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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

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)
  • Stored Programmes (AREA)

Abstract

The invention provides a method and a device for issuing an application, which can solve the problems that the application can only upgrade the gray level to a single version and cannot realize the coexistence state of multiple versions for issuing the gray level; in addition, the invention can also realize that the number of the container copies of any version can be adjusted at any time when multiple versions of the application coexist. The method comprises the following steps: configuring version information according to an application initialization requirement, then creating a copy controller according to the version information, and storing the copy controller, wherein the copy controller comprises at least one of the following information: container mirroring, container copy number, container specification, home application; and when an application gray release demand exists, adding and configuring one or more new version information according to the application gray release demand, then creating one or more new copy controllers according to the one or more new version information, and storing.

Description

Application publishing method and device
Technical Field
The invention relates to the technical field of computers, in particular to a method and a device for issuing applications.
Background
As container cluster management techniques mature and improve, more and more applications will manage the lifecycle of a collection of stateless applications through container replica set controller techniques. A series of issuing operations of initial issuing, upgrading, offline, capacity expansion, capacity reduction and the like of the stateless applications all need to be set specifically through the copy controller.
In the prior art, one service application corresponds to one replica controller. A copy number segment (duplicates) within a copy controller, describing how many container copies are within the copy controller; there is also a mirror field (image) that describes which mirror is used by all containers in the application.
When an application needs gray scale release, the upgrade is mainly realized by a rolling update (rolling update) technology. This technique is accomplished primarily by creating a new replica controller in place of the old replica controller.
Specifically, the rolling update (rolling update) technique is as follows: the new controller is configured with a new image. When an application temporarily has two replica controllers. Through the automatic management of the process in which the copy controller is located, the copy number (replicacs) of the new copy controller is gradually increased inside the process, and the copy number (replicacs) of the old copy controller is reduced at the same time, so that smooth switching of gray scale upgrading is completed. The rolling upgrade technique will complete in a certain amount of time, the number of copies (repllicates) of the oldest copy controller will be zero, and the oldest copy controller will be deleted, and the new copy controller will take over all container copies completely.
In the process of implementing the invention, the inventor finds that at least the following problems exist in the prior art:
1. the rolling upgrading technology can ensure that container copies with multiple versions provide services at the same time in a short time, but all container copies can be upgraded to new versions finally, and the container copies with multiple versions cannot be ensured to coexist at the same time;
2. in the rolling upgrading technology, the online service time of the application of the new version and the old version cannot be flexibly set according to the business requirements;
3. the rolling upgrading technology cannot flexibly set the number of the copies of the new version and the old version.
Disclosure of Invention
In view of this, embodiments of the present invention provide a method and an apparatus for issuing an application, which can solve the problem that an application can only upgrade a grayscale to a single version and cannot achieve a coexistence state of multiple versions for grayscale issuing; in addition, the invention can also realize that the number of the container copies of any version can be adjusted at any time when multiple versions of the application coexist.
To achieve the above object, according to an aspect of an embodiment of the present invention, a method for application publishing is provided.
The method for issuing the application comprises the following steps: configuring version information according to an application initialization requirement, then creating a copy controller according to the version information, and storing the copy controller, wherein the copy controller comprises at least one of the following information: container mirroring, container copy number, container specification, home application; and when an application gray release demand exists, adding and configuring one or more new version information according to the application gray release demand, then creating one or more new copy controllers according to the one or more new version information, and storing.
Optionally, the method further comprises: and adjusting the copy number in the copy controller according to the application updating requirement.
Optionally, the method further comprises: and reserving a copy controller according to the application updating requirement, and setting the container copy number of the rest copy controllers to be zero.
To achieve the above object, according to another aspect of the embodiments of the present invention, there is provided an apparatus for application publishing.
The device for application release of the embodiment of the invention comprises: the initialization module is used for configuring version information according to an application initialization requirement, then creating a copy controller according to the version information, and storing the copy controller, wherein the copy controller comprises at least one of the following information: container mirroring, container copy number, container specification, home application; and the gray release module is used for adding and configuring one or more new version information according to the application gray release demand when the application gray release demand exists, and then creating one or more new copy controllers according to the one or more new version information and storing the one or more new version controllers.
Optionally, the apparatus further comprises: and the updating module is used for adjusting the copy number in the copy controller according to the application updating requirement.
Optionally, the update module is further configured to: and reserving a copy controller according to the application updating requirement, and setting the container copy number of the rest copy controllers to be zero.
To achieve the above object, according to still another aspect of embodiments of the present invention, there is provided an electronic apparatus.
An electronic device of an embodiment of the present invention includes: one or more processors; the storage device is used for storing one or more programs, and when the one or more programs are executed by the one or more processors, the one or more processors realize the application publishing method of the embodiment of the invention.
To achieve the above object, according to still another aspect of an embodiment of the present invention, there is provided a computer-readable medium.
A computer-readable medium of an embodiment of the present invention has a computer program stored thereon, which, when executed by a processor, implements the method of application publication of an embodiment of the present invention.
One embodiment of the above invention has the following advantages or benefits: because a bypass control mode is adopted, an application controller is designed to manage a plurality of copy controllers in an application by improving the hierarchy of application management without taking a container as a main management target but taking the application as a management unit, and the technical means of modifying the container copy controller by using a rolling upgrading scheme in the prior art is avoided, so that the technical problem caused by that only rolling upgrading can be carried out on specific container copies in the copy controller when gray scale release is carried out in the application release process in the prior art is solved, the application version is flexibly managed, and the technical effect of realizing coexistence of a plurality of versions by carrying out gray scale release at any time is achieved; in addition, by the whole technical scheme, the copy number corresponding to each version of the application can be flexibly set at any time, and the online service time and the offline time of the new version and the old version can be flexibly set according to the application updating requirement.
Further effects of the above-mentioned non-conventional alternatives will be described below in connection with the embodiments.
Drawings
The drawings are included to provide a better understanding of the invention and are not to be construed as unduly limiting the invention. Wherein:
FIG. 1 is a schematic diagram of the main steps of a method of application publication according to an embodiment of the invention;
fig. 2 is a schematic diagram of the principle of bypass control by an application controller of a method of application publishing according to an embodiment of the present invention;
fig. 3 is a schematic diagram of a main flow of application initialization publishing of the method of application publishing according to an embodiment of the present invention;
fig. 4 is a schematic diagram of a main flow of implementing gray release for adding a new version of an application in a method for releasing an application according to an embodiment of the present invention;
fig. 5 is a schematic diagram of a main flow of adjusting the number of container copies of a version of an application in a method for publishing the application according to an embodiment of the present invention;
FIG. 6 is a schematic diagram of a main flow of a version of an application publishing method according to an embodiment of the present invention;
fig. 7 is a schematic diagram of a main flow of application rollback to a certain version in the method of application publication according to the embodiment of the present invention;
FIG. 8 is a schematic diagram of the main modules of an apparatus for application publishing in accordance with an embodiment of the present invention;
FIG. 9 is an exemplary system architecture diagram in which embodiments of the present invention may be employed;
fig. 10 is a schematic block diagram of a computer system suitable for use in implementing a terminal device or server according to an embodiment of the present invention.
Detailed Description
Exemplary embodiments of the present invention are described below with reference to the accompanying drawings, in which various details of embodiments of the invention are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the invention. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
According to the technical scheme of the application release, the application life cycle is managed by mainly improving the management level, taking the container as a main management target and taking the application as a management target like the prior art, and realizing an application controller processing program, so that the application initialization release and the gray release are completed. The application controller handler is a completely new external system independent of the existing container management system (i.e., container copy controller).
In the embodiment of the invention, one version of the application corresponds to one copy controller, and each application can have a plurality of copy controllers. For each application, one or more replica controllers are managed by hanging one application controller.
The following is a detailed explanation of technical terms involved in the examples of the present invention:
a container: is a series of processes isolated from other parts of the business system, runs from a template mirror image, and provides all files needed for supporting the processes by the mirror image;
container mirroring: is a template of a read-only container, contains all file system structures and contents thereof needed by starting the container, and is the basis for starting the container;
a container copy controller: the method comprises the steps that a program for realizing copy management of containers mainly manages the life cycle of a batch of container sets produced by the template through the same template;
gray level release: the method refers to an application release mode capable of smoothly transiting between black and white. AB test is a gray level publishing mode, one user continues to use A, one user starts to use B, and if the user has no objection to B, the range is gradually expanded, and all users are migrated to B. The gray release can ensure the stability of the whole system, and the problems can be found and adjusted in the initial gray so as to ensure the influence degree;
the application controller: and a control processing program for managing the life cycle of one application in units of applications. Within an application controller, there may be multiple replica controllers.
Fig. 1 is a schematic diagram of the main steps of a method of application publication according to an embodiment of the present invention.
As shown in fig. 1, the method for issuing an application according to the embodiment of the present invention mainly includes the following steps:
step S101: configuring version information according to an application initialization requirement, then creating a copy controller according to the version information, and storing the copy controller, wherein the copy controller comprises at least one of the following information: container mirror, number of container copies, container specification, home application.
In the embodiment of the invention, the control of the copy controller of the application is realized by designing one application controller for bypass control, namely an application control processing program. According to the logic of application release, before gray scale release is realized, the initial release of the application is required. The step of the step is to realize the initial release of the application. Wherein, one or more container copies can be included in the copy controller created according to the version information of the application.
After the initial distribution of the application is completed in step S101, processing is performed from step S102 according to the application distribution demand.
Step S102: when an application gray level release requirement exists, one or more new version information is added and configured according to the application gray level release requirement, and then one or more new copy controllers are created and stored according to the one or more new version information. The purpose of this step is to realize the situation that multiple versions (two or more) coexist simultaneously in the application according to the application gray release requirement.
In this embodiment of the present invention, the method for issuing the application may further include: and adjusting the copy number in the copy controller according to the application updating requirement. The adjusting of the copy number in the copy controller may include increasing or decreasing the existing copy number, or may directly adjust the copy number of the copy controller corresponding to a certain version to zero according to an offline requirement of the version in the application.
In addition, the method may further include: and reserving a copy controller according to the application updating requirement, and setting the container copy number of the rest copy controllers to be zero.
Fig. 2 is a schematic diagram of the principle of bypass control by an application controller of a method of application publication according to an embodiment of the present invention. As shown in fig. 2, the relationship between the application controller, the replica controller and the container is as follows: within an application controller, multiple copy controllers (two are shown in the figure) may be managed, for example, one or more (two or more) copy controller pages may be exposed through one exposure page, and then various information of the copy controllers, such as container images used by the copy controllers, copy number, container specification, home application, etc., may be adjusted in the exposed copy controllers, and multiple container copies may be freely set within one copy controller (for example, according to the illustration, 10 container copies are included in the copy controller 1, and 20 container copies are included in the copy controller 2).
Fig. 3 is a schematic diagram of a main flow of application initialization publishing of the method of application publishing according to an embodiment of the present invention.
As shown in fig. 3, the first version release process of the application, i.e. the process of the application initialization release, is as follows: the application controller firstly judges whether the number of the applied copy controllers is zero, if so, the application controller creates the applied copy controllers, and generates container copies with corresponding number according to the information of the copy controllers.
Fig. 4 is a schematic diagram of a main flow of implementing gray release for adding a new version of an application in a method for releasing an application according to an embodiment of the present invention.
As shown in fig. 4, the process of applying the gray scale upgrade mainly includes: and the application controller judges whether the number of the applied copy controllers is zero or not, returns to the application initialization issuing process if the number of the applied copy controllers is zero, and performs gray level issuing, namely updating if the number of the applied copy controllers is not zero. The method comprises the steps of firstly setting version information corresponding to one or more newly released versions, for example, setting information such as container images to be used and the number of container copies, and then creating one or more copy controllers according to the one or more version information and saving the copy controllers.
Fig. 5 is a schematic diagram of a main flow of adjusting the number of container copies of a version of an application in a method for publishing the application according to an embodiment of the present invention.
As shown in fig. 5, the process of applying the number of copies of a certain version to adjust mainly includes: the application controller judges whether the number of the applied copy controllers is zero or not, if the number of the applied copy controllers is zero, the application controller returns to the application initialization release process again, if the number of the applied copy controllers is not zero, the application controller displays the information of each copy controller in a front-end display mode, and then the number of the copies in the copy controller corresponding to a certain version is adjusted according to the updating requirement for adjusting the number of the copies.
Fig. 6 is a schematic diagram of a main flow of a certain version of the application publishing method according to the embodiment of the present invention.
As shown in fig. 6, the main flow of the offline of a certain version of an application includes: the application controller displays the information of each copy controller in a front-end display mode, and then adjusts the copy number of the copy controller corresponding to the version to be zero according to the offline updating requirement of the specified version and stores the copy number. When the copy number of the copy controller is set to zero, the copy controller is directly deleted.
Fig. 7 is a schematic diagram of a main flow of application rollback to a certain version in the method for application publishing according to the embodiment of the present invention.
As shown in fig. 7, the main flow of application rollback to a certain version includes: the application controller displays the information of each copy controller in a front-end display mode, sets the copy number of the copy controller corresponding to a version according to the updating requirement that the application needs to be rolled back to the version, and logs off the copy controllers corresponding to other versions, namely sets the copy number of the copy controllers of other versions to be zero.
The technical scheme of the embodiment of the invention is mainly different from the realization logic of rolling update on a single controller to which the application belongs in the prior art through the design idea of bypass control, and the control of the application is realized by externally hanging an application controller taking the application as a unit. The application controller is in units of applications, and each application can have a plurality of replica controllers. The application controller stores replica controller information for the application, each replica controller corresponding to a version of an application. The initialization distribution, the gray scale distribution and other operations of the application are realized by configuring the copy controllers of the versions corresponding to the application by the application controller.
According to the technical scheme of the application release of the embodiment of the invention, as a bypass control mode is adopted, an application controller is designed to manage a plurality of copy controllers in the application by improving the hierarchy of application management without taking a container as a main management target but taking the application as a management unit, and the technical means of modifying the container copy controller by using the rolling upgrade scheme in the prior art is avoided, so that the technical problem that when the gray scale release is carried out in the application release process in the prior art, the rolling upgrade can only be carried out on specific container copies in the copy controllers is solved, the application version is flexibly managed, and the technical effect of coexistence of a plurality of versions can be realized by carrying out the gray scale release at any time; in addition, by the whole technical scheme, the copy number corresponding to each version of the application can be flexibly set at any time, and the online service time and the offline time of the new version and the old version can be flexibly set according to the application updating requirement.
Fig. 8 is a schematic diagram of main modules of an apparatus for application publishing according to an embodiment of the present invention.
As shown in fig. 8, an apparatus 800 for application publishing mainly includes the following modules: an initialization module 801 and a grayscale distribution module 802.
The initialization module 801 may be configured to configure version information according to an application initialization requirement, create a copy controller according to the version information, and store the copy controller, where the copy controller includes at least one of the following information: container mirroring, container copy number, container specification, home application; and the gray release module 802 may be configured to, when there is an application gray release demand, add and configure one or more new version information according to the application gray release demand, and then create and store one or more new copy controllers according to the one or more new version information.
In this embodiment of the present invention, the apparatus 800 may further include: and an updating module (not shown in the figure) for adjusting the copy number in the copy controller according to the application updating requirement.
In addition, the update module may be further operable to: and reserving a copy controller according to the application updating requirement, and setting the container copy number of the rest copy controllers to be zero.
From the above description, it can be seen that, by adopting a bypass control mode, an application controller is designed to manage a plurality of copy controllers inside an application by improving the hierarchy of application management without taking a container as a main management target but taking the application as a management unit, so as to avoid the technical means of modifying the container copy controller by using the rolling upgrade scheme in the prior art, thereby overcoming the technical problem brought by rolling upgrade only aiming at a specific container copy in the copy controller when gray scale release is performed in the application release process in the prior art, further achieving the technical effect of flexibly managing application versions and realizing coexistence of a plurality of versions by performing gray scale release at any time; in addition, by the whole technical scheme, the copy number corresponding to each version of the application can be flexibly set at any time, and the online service time and the offline time of the new version and the old version can be flexibly set according to the application updating requirement.
Fig. 9 shows an exemplary system architecture 900 of an application publishing method or apparatus to which embodiments of the present invention may be applied.
As shown in fig. 9, the system architecture 900 may include end devices 901, 902, 903, a network 904, and a server 905. Network 904 is the medium used to provide communication links between terminal devices 901, 902, 903 and server 905. Network 904 may include various connection types, such as wired, wireless communication links, or fiber optic cables, to name a few.
A user may use the terminal devices 901, 902, 903 to interact with a server 905 over a network 904 to receive or send messages and the like. The terminal devices 901, 902, 903 may have installed thereon various messenger client applications such as, for example only, a shopping-like application, a web browser application, a search-like application, an instant messaging tool, a mailbox client, social platform software, etc.
The terminal devices 901, 902, 903 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and the like.
The server 905 may be a server providing various services, such as a background management server (for example only) providing support for shopping websites browsed by users using the terminal devices 901, 902, 903. The backend management server may analyze and perform other processing on the received data such as the product information query request, and feed back a processing result (for example, target push information, product information — just an example) to the terminal device.
It should be noted that the application publishing method provided in the embodiment of the present invention is generally executed by the server 905, and accordingly, the application publishing apparatus is generally disposed in the server 905.
It should be understood that the number of terminal devices, networks, and servers in fig. 9 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
Referring now to FIG. 10, a block diagram of a computer system 1000 suitable for use with a terminal device implementing an embodiment of the invention is shown. The terminal device shown in fig. 10 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present invention.
As shown in fig. 10, the computer system 1000 includes a Central Processing Unit (CPU)1001 that can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM)1002 or a program loaded from a storage section 1008 into a Random Access Memory (RAM) 1003. In the RAM 1003, various programs and data necessary for the operation of the system 1000 are also stored. The CPU 1001, ROM 1002, and RAM 1003 are connected to each other via a bus 1004. An input/output (I/O) interface 1005 is also connected to bus 1004.
The following components are connected to the I/O interface 1005: an input section 1006 including a keyboard, a mouse, and the like; an output section 1007 including a display such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage portion 1008 including a hard disk and the like; and a communication section 1009 including a network interface card such as a LAN card, a modem, or the like. The communication section 1009 performs communication processing via a network such as the internet. The driver 1010 is also connected to the I/O interface 1005 as necessary. A removable medium 1011 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 1010 as necessary, so that a computer program read out therefrom is mounted into the storage section 1008 as necessary.
In particular, according to the embodiments of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication part 1009 and/or installed from the removable medium 1011. The computer program executes the above-described functions defined in the system of the present invention when executed by the Central Processing Unit (CPU) 1001.
It should be noted that the computer readable medium shown in the present invention can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, 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 disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present invention, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present invention, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules described in the embodiments of the present invention may be implemented by software or hardware. The described modules may also be provided in a processor, which may be described as: a processor includes an initialization module and a grayscale release module. The names of these modules do not in some cases constitute a limitation on the module itself, for example, the initialization module may also be described as a "module configuring version information according to application initialization requirements".
As another aspect, the present invention also provides a computer-readable medium that may be contained in the apparatus described in the above embodiments; or may be separate and not incorporated into the device. The computer readable medium carries one or more programs which, when executed by a device, cause the device to comprise: configuring version information according to an application initialization requirement, then creating a copy controller according to the version information, and storing the copy controller, wherein the copy controller comprises at least one of the following information: container mirroring, container copy number, container specification, home application; and when an application gray release demand exists, adding and configuring one or more new version information according to the application gray release demand, then creating one or more new copy controllers according to the one or more new version information, and storing.
According to the technical scheme of the embodiment of the invention, because a bypass control mode is adopted, an application controller is designed to manage a plurality of copy controllers in the application by improving the hierarchy of application management without taking a container as a main management target but taking the application as a management unit, and the technical means of modifying the container copy controller by using the rolling upgrading scheme in the prior art is avoided, so that the technical problem caused by that only rolling upgrading can be carried out on specific container copies in the copy controller when gray scale release is carried out in the application release process in the prior art is solved, the application version is flexibly managed, and the technical effect of realizing coexistence of a plurality of versions by carrying out gray scale release at any time is achieved; in addition, by the whole technical scheme, the copy number corresponding to each version of the application can be flexibly set at any time, and the online service time and the offline time of the new version and the old version can be flexibly set according to the application updating requirement.
The above-described embodiments should not be construed as limiting the scope of the invention. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions can occur, depending on design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (4)

1. A method for application publishing, comprising:
configuring version information according to application initialization requirements for each externally hung application controller, then creating and storing copy controllers according to the version information, wherein the application controllers are independent of the copy controllers of the corresponding applications and used for managing the copy controllers of the corresponding applications, and the copy controllers comprise at least one of the following information: container mirroring, container copy number, container specification, home application; and
when an application gray release requirement exists, the application controller judges whether the number of the applied copy controllers is zero, and under the condition of not being zero, one or more new version information is added and configured according to the application gray release requirement, and then one or more new copy controllers are created and stored according to the one or more new version information;
when the application controller manages the copy controllers, one or more copy controller pages are displayed through a display page, and then the at least one information of the corresponding copy controller is adjusted in the copy controller pages: the method comprises the steps of container mirroring, container copy number, container specification and home application, wherein when the application adjusts the copy number of one version, the application controller judges whether the copy controller number of the application is zero, if not, the application controller displays the information of each copy controller in a front-end display mode and adjusts the copy number in the copy controller corresponding to the version; when one version of the application is offline, the application controller displays the information of each copy controller in a front-end display mode, and then adjusts the copy number of the copy controller corresponding to the version to be zero so as to delete the copy controller corresponding to the version; when the application is rolled back to one version, the application controller displays the information of each copy controller in a front-end display mode, sets the copy number of the copy controller corresponding to the version, and sets the copy number of the copy controllers of all other versions to be zero.
2. An apparatus for application publishing, comprising:
an initialization module, configured to configure version information according to an application initialization requirement for each application external application controller, and then create and store a copy controller according to the version information, where the application controller is independent of each copy controller of a corresponding application and is configured to manage each copy controller of the corresponding application, and the copy controller includes at least one of the following information: container mirroring, container copy number, container specification, home application; and
the application controller is used for judging whether the number of the applied copy controllers is zero or not when the application gray level release requirement exists, adding and configuring one or more new version information according to the application gray level release requirement under the condition of not being zero, and then creating one or more new copy controllers according to the one or more new version information and storing the one or more new version information; when the application controller manages the copy controllers, one or more copy controller pages are displayed through a display page, and then the at least one information of the corresponding copy controller is adjusted in the copy controller pages: the method comprises the steps of container mirroring, container copy number, container specification and home application, wherein when the application adjusts the copy number of one version, the application controller judges whether the copy controller number of the application is zero, if not, the application controller displays the information of each copy controller in a front-end display mode and adjusts the copy number in the copy controller corresponding to the version; when one version of the application is offline, the application controller displays the information of each copy controller in a front-end display mode, and then adjusts the copy number of the copy controller corresponding to the version to be zero so as to delete the copy controller corresponding to the version; when the application is rolled back to one version, the application controller displays the information of each copy controller in a front-end display mode, sets the copy number of the copy controller corresponding to the version, and sets the copy number of the copy controllers of all other versions to be zero.
3. An electronic device, comprising:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement the method of claim 1.
4. A computer-readable medium, on which a computer program is stored, which, when being executed by a processor, carries out the method of claim 1.
CN201710805790.4A 2017-09-08 2017-09-08 Application publishing method and device Active CN107656748B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710805790.4A CN107656748B (en) 2017-09-08 2017-09-08 Application publishing method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710805790.4A CN107656748B (en) 2017-09-08 2017-09-08 Application publishing method and device

Publications (2)

Publication Number Publication Date
CN107656748A CN107656748A (en) 2018-02-02
CN107656748B true CN107656748B (en) 2021-03-30

Family

ID=61129389

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710805790.4A Active CN107656748B (en) 2017-09-08 2017-09-08 Application publishing method and device

Country Status (1)

Country Link
CN (1) CN107656748B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110297659A (en) * 2018-03-21 2019-10-01 北京京东尚科信息技术有限公司 Algorithm model disposes loading method and device
CN110716730B (en) * 2019-10-14 2023-09-26 网易(杭州)网络有限公司 Gray release method, device, equipment and computer readable storage medium
CN111158715B (en) * 2019-12-19 2024-02-06 中国平安财产保险股份有限公司 Gray release control method and system
CN111949311B (en) * 2020-08-12 2023-08-25 中国工商银行股份有限公司 Gray level release method and system
CN111949379A (en) * 2020-09-18 2020-11-17 成都精灵云科技有限公司 Declarative copy control method based on container scheduling engine
CN112732274B (en) * 2021-01-08 2024-06-04 上海汇付支付有限公司 Container application publishing method and management platform based on gray scale publishing

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9348707B2 (en) * 2013-12-18 2016-05-24 International Business Machines Corporation Dynamically adjusting the number of replicas of a file according to the probability that the file will be accessed within a distributed file system
CN105099988B (en) * 2014-04-24 2018-11-27 阿里巴巴集团控股有限公司 Method, access method and device and system for supporting gray scale to issue
WO2016103356A1 (en) * 2014-12-24 2016-06-30 株式会社 東芝 Hierarchical storage system, storage controller, and replication initialization method
CN105376303B (en) * 2015-10-23 2018-11-06 深圳前海达闼云端智能科技有限公司 Docker implementation system and communication method thereof
CN105354076B (en) * 2015-10-23 2019-01-25 北京云端光科技术有限公司 Application deployment method and device
CN105975270A (en) * 2016-05-04 2016-09-28 北京思特奇信息技术股份有限公司 Gray scale distribution method and system based on HTTP request forwarding
CN106020930B (en) * 2016-05-13 2019-07-23 深圳市中润四方信息技术有限公司 A kind of application management method and system based on application container
CN106649083A (en) * 2016-09-05 2017-05-10 中国农业银行股份有限公司 Application grey scale release method and equipment and application visit method and equipment
CN106487912B (en) * 2016-10-26 2019-10-11 北京荣之联科技股份有限公司 The management more being served by and dissemination method and device
CN106686132A (en) * 2017-02-06 2017-05-17 郑州云海信息技术有限公司 Yunhai system deployment method and system
CN106909386A (en) * 2017-02-27 2017-06-30 郑州云海信息技术有限公司 A kind of cloud platform code continuous integrating method and system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"乐视云基于Kubernetes(k8s)的PaaS平台建设";张杰;《https://www.kubernetes.org.cn/1447.html》;20170216;第3、19-20页 *

Also Published As

Publication number Publication date
CN107656748A (en) 2018-02-02

Similar Documents

Publication Publication Date Title
CN107656748B (en) Application publishing method and device
CN107590001B (en) Load balancing method and device, storage medium and electronic equipment
CN109245908B (en) Method and device for switching master cluster and slave cluster
CN111782235A (en) Data upgrading and querying method and device
CN107347093B (en) Configuration method and device for distributed server system
KR20220151585A (en) Business data processing method, apparatus, electronic apparatus, storage media and computer program
CN112597126A (en) Data migration method and device
CN112398669B (en) Hadoop deployment method and device
CN110119279B (en) Application and upgrading method and device thereof
CN107818027B (en) Method and device for switching main name node and standby name node and distributed system
CN111208974A (en) Component management method and device
CN110113176B (en) Information synchronization method and device for configuration server
CN107741970B (en) Method and device for laying out main page
CN112084254A (en) Data synchronization method and system
WO2023066246A1 (en) Method and system for installing application on cloudphone, and client cloudphone
CN111343220B (en) Repeater, distributed file transmission method, distributed file transmission system, medium and electronic equipment
CN115982148A (en) Database table processing method and device, electronic equipment and storage medium
CN113779122B (en) Method and device for exporting data
CN110162326A (en) The method of firmware upgrade and system comprising hard disk
CN110661857B (en) Data synchronization method and device
CN103220336A (en) Vector clock achieving method and system in file synchronization
CN113760861A (en) Data migration method and device
CN113742376A (en) Data synchronization method, first server and data synchronization system
CN109213815B (en) Method, device, server terminal and readable medium for controlling execution times
CN110851192A (en) Method and device for responding to configuration of degraded switch

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