Service publishing method and related device

Through the two-stage service release process, internal verification is first carried out and external verification is solved, and the problem of frequent adjustment and verification of grayscale release strategies in the existing technology is solved, which improves release stability and user experience and reduces release risks.

CN119149085APending Publication Date: 2024-12-17MASHANG CONSUMER FINANCE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410969028.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-07-18
Publication Date
2024-12-17

AI Technical Summary

Technical Problem

The existing grayscale publishing method requires frequent adjustment of the publishing strategy according to different scenarios, and fails to effectively distinguish between internal verification and external verification, which can be perceived by the user when the system errors are caused, affecting the user experience.

Method used

A two-stage service release process is adopted, internal verification is performed first (first lane) and external verification is performed (second lane). Through logical isolation, external verification is avoided before internal verification is completed, reducing the risk of service release.

Benefits of technology

There is no need to change the release strategy according to different scenarios, which improves the stability and user experience of service release, reduces the release risk, and prevents users from perceiving system errors.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119149085A_ABST
    Figure CN119149085A_ABST
Patent Text Reader

Abstract

The invention provides a service publishing method and a related device. The service publishing method comprises the following steps: setting a first instance label for a to-be-published service and publishing the to-be-published service to a first lane; setting a first flow label for first verification request information according to a first preset configuration strategy, and forwarding the first verification request information to the first lane; if the first verification is passed, setting a second instance label for the to-be-published service and publishing the to-be-published service to a second lane; setting a second traffic label for second verification request information with a preset proportion according to a second preset configuration strategy, and forwarding the second verification request information with the preset proportion to the second lane; and if the second verification is passed and the preset proportion reaches a proportion threshold value, publishing the service to be published to a third lane. The release strategy does not need to be changed according to different scenes, the stability is ensured, meanwhile, internal verification and external verification are logically isolated, and the risk of service release is greatly reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of electronic digital data processing, and in particular to a service publishing method and related devices. Background Art

[0002] Currently, when releasing services, commonly used release strategies include grayscale release. The basic idea of ​​grayscale release is to allow some users to start using the new version of the service, while other users continue to use the old version of the service. If some users do not encounter problems when using the new version of the service, then the scope of the new version of the service will be gradually expanded, and eventually all users will be migrated to the new version of the service. Grayscale release can ensure the stability of the overall system and reduce the impact of full release.

[0003] However, there are currently multiple release strategies for grayscale releases, which need to be adjusted frequently according to different scenarios. The differences between internal and external verification are not considered. Generally, internal and external verifications are mixed together for grayscale releases. For example, actual user-related traffic is used during product verification, which causes users to be able to perceive system errors, resulting in a poor user experience. Summary of the invention

[0004] In view of this, the present application provides a service publishing method and related devices, which are configured with a two-stage service publishing process. There is no need to change the publishing strategy according to different scenarios, thereby ensuring stability. At the same time, internal verification and external verification are logically isolated to prevent external verification from being performed before internal verification is completed, greatly reducing the risk of service publishing.

[0005] In a first aspect, an embodiment of the present application provides a service publishing method, the method comprising:

[0006] Setting a first instance tag for the service to be published, and publishing the service to be published to the first lane;

[0007] Setting a first flow label for the first verification request information according to a first preset configuration strategy, and forwarding the first verification request information to the first lane;

[0008] In the first lane, performing a first verification on the to-be-published service through the first verification request information;

[0009] If the first verification passes, setting a second instance tag for the service to be published, and publishing the service to be published to the second lane;

[0010] Setting a second flow label for a preset proportion of second verification request information according to a second preset configuration strategy, and forwarding the preset proportion of second verification request information to the second lane;

[0011] In the second lane, performing a second verification on the to-be-published service through the second verification request information of the preset proportion;

[0012] If the second verification passes and the preset ratio reaches the ratio threshold, the to-be-published service is published to the third lane.

[0013] In a second aspect, an embodiment of the present application provides a service publishing device, the device comprising:

[0014] A first publishing unit, configured to set a first instance tag for the service to be published, and publish the service to be published to a first lane;

[0015] A first forwarding unit, configured to set a first flow label for the first verification request information according to a first preset configuration policy, and forward the first verification request information to the first lane;

[0016] A first verification unit, configured to perform a first verification on the to-be-published service in the first lane through the first verification request information;

[0017] A second publishing unit, configured to set a second instance tag for the service to be published and publish the service to be published to a second lane if the first verification passes;

[0018] A second forwarding unit, configured to set a second flow label for a preset proportion of second verification request information according to a second preset configuration strategy, and forward the preset proportion of second verification request information to the second lane;

[0019] A second verification unit, configured to perform a second verification on the to-be-published service in the second lane through the second verification request information of the preset proportion;

[0020] The third publishing unit is configured to publish the service to be published to a third lane if the second verification passes and the preset ratio reaches a ratio threshold.

[0021] In a third aspect, an embodiment of the present application provides an electronic device, comprising a processor, a memory, a communication interface, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the processor, and the program includes instructions for executing the steps of any method in the first aspect of the embodiment of the present application.

[0022] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program for electronic data exchange, wherein the computer program enables a computer to execute part or all of the steps described in any method of the first aspect of the embodiment of the present application.

[0023] In a fifth aspect, an embodiment of the present application provides a computer program product, wherein the computer program product includes a non-transitory computer-readable storage medium storing a computer program, and the computer program is operable to cause a computer to execute some or all of the steps described in any method of the first aspect of the embodiment of the present application. The computer program product may be a software installation package.

[0024] It can be seen that through the above service publishing method and related devices, first, a first instance tag is set for the service to be published, and the service to be published is published to the first lane; a first flow tag is set for the first verification request information according to the first preset configuration strategy, and the first verification request information is forwarded to the first lane; in the first lane, the first verification is performed on the service to be published through the first verification request information; if the first verification passes, a second instance tag is set for the service to be published, and the service to be published is published to the second lane; a second flow tag is set for the second verification request information of a preset proportion according to the second preset configuration strategy, and the second verification request information of the preset proportion is forwarded to the second lane; in the second lane, a second verification is performed on the service to be published through the second verification request information of the preset proportion; if the second verification passes and the preset proportion reaches the proportion threshold, the service to be published is published to the third lane. Since a two-stage service publishing process is configured, there is no need to change the publishing strategy according to different scenarios, which ensures stability. At the same time, internal verification and external verification are logically isolated to prevent external verification before internal verification is completed, which greatly reduces the risk of service publishing. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without paying any creative work.

[0026] Figure 1 A system architecture diagram of a service publishing method provided in an embodiment of the present application;

[0027] Figure 2 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application;

[0028] Figure 3 A flowchart of a service publishing method provided in an embodiment of the present application;

[0029] Figure 4 A system interaction diagram of a service publishing method provided in an embodiment of the present application;

[0030] Figure 5 A schematic diagram of the execution flow of a two-stage grayscale publishing device provided in an embodiment of the present application;

[0031] Figure 6 A block diagram of the functional units of a network service publishing device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0032] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0033] The terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish different objects, rather than to describe a specific order. 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 limited to the listed steps or units, but optionally includes steps or units that are not listed, or optionally includes other steps or units inherent to these processes, methods, products or devices.

[0034] It should be understood that the term "and / or" in this article is only a description of the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article indicates that the associated objects before and after are in an "or" relationship. The "plurality" appearing in the embodiments of the present application refers to two or more.

[0035] In the embodiments of the present application, "at least one item" or similar expressions refer to any combination of these items, including any combination of single items or plural items, and refer to one or more, and multiple refers to two or more. For example, at least one item of a, b, or c can represent the following seven situations: a, b, c, a and b, a and c, b and c, a, b, and c. Among them, each of a, b, and c can be an element or a set containing one or more elements.

[0036] The "connection" that appears in the embodiments of the present application refers to various connection methods such as direct connection or indirect connection to achieve communication between devices, and the embodiments of the present application do not impose any limitations on this.

[0037] Reference to "embodiments" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0038] The following is an explanation of the relevant contents, concepts, meanings, technical issues, technical solutions, beneficial effects, etc. involved in the embodiments of the present application.

[0039] Services to be released: The services to be released in the embodiments of the present application are the latest versions of the applications that need to be released. The differences between the services to be released and the current services may be functional updates or corrections to existing errors. For example, when an application is updated, the new version of the application can be understood as the services to be released, and the old version of the application can be understood as the services that need to be replaced by the services to be released.

[0040] Instance tag: refers to a certain tag information contained in the server instance / server (for example, the instance configuration contains the tag Tag: gray-1).

[0041] Traffic label: refers to a certain label information contained in the request information (for example, X-Tag: gray-1 is contained in the HTTP request header).

[0042] Swimlane: A logical grouping of instances (servers) based on instance labels.

[0043] Traffic: In the embodiment of the present application, traffic does not indicate the data size, but corresponds to the request information and reflects the type of request information. For example, the traffic corresponding to the first verification request information may be the first traffic, and the traffic corresponding to the second verification request information may be the second traffic.

[0044] At present, the grayscale release solution generally selects specific users for grayscale release by setting up a user whitelist and marking user characteristics with specific labels. Generally, it is necessary to frequently change the release strategy according to different scenarios, which increases the risk of online operations. At the same time, the difference between product / business verification and actual user verification is not considered. The two types of traffic are mixed during grayscale release. For example, actual user-related traffic is added during product verification, which will lead to user complaints if a business system bug occurs.

[0045] To solve the above problems, the embodiments of the present application provide a service publishing method and related devices, which can perform grayscale publishing through a two-stage publishing process. There is no need to frequently change the publishing strategy according to the scenario, which improves stability. At the same time, through the two-stage publishing process, the product / business verification process, the function verification process for a small number of users, and the function usage process for all users are logically isolated, thereby preventing the product / business from being opened to users without sufficient verification, which may lead to online publishing risks.

[0046] Combine the following Figure 1 The system architecture of a service publishing method provided in an embodiment of the present application is described. Figure 1 A system architecture diagram of a service publishing method provided for an embodiment of the present application includes a grayscale publishing configuration platform 110, a two-stage grayscale publishing device 120, a service publishing system 130, an application programming interface (Application Programming Interface, API) gateway 140, an authentication device 150, a first lane 161, a second lane 162 and a third lane 163.

[0047] Among them, the grayscale release configuration platform 110 includes a first preset configuration strategy and a second preset configuration strategy. The grayscale release configuration platform 110 is used to synchronize the first preset configuration strategy and the second preset configuration strategy to the two-stage grayscale release device 120. Specifically, the release personnel can edit the configuration strategy on the grayscale release configuration platform, and the grayscale release configuration platform 110 can send the edited configuration strategy to the two-stage grayscale release device 120. Among them, the first preset configuration strategy can be used for the verification of the first stage, and the second preset configuration strategy can be used for the verification of the second stage. It can be understood that the first preset configuration strategy can be used to set a first flow label for the first flow carrying the first feature identifier, and the second preset configuration strategy can be used to set a second flow label for the second flow that meets the gradient flow ratio. For example, the first preset configuration strategy can be used to set a first flow label for the flow containing "id=123" in the request information, and the second preset configuration strategy can be used to first set a second flow label for 5% of the flow in the request information, then set a second flow label for 10% of the flow in the request information, and finally set a second flow label for 15% of the flow in the request information. It should be noted that the first flow label and the second flow label are used to distinguish different service release stages. It can be seen that by synchronizing the first preset configuration strategy and the second preset configuration strategy, there is no need to frequently change the release strategy according to different release scenarios, which greatly reduces the operational risk.

[0048] Among them, the two-stage grayscale publishing device 120 can drive the service publishing system 130 to publish services to different lanes according to different publishing stages. The publishing stages are divided into a first verification stage, a second verification stage and a final publishing stage. The first verification stage is to perform product / business verification, and the second verification stage is to perform user verification. In the first verification stage, the two-stage grayscale publishing device 120 can drive the service publishing system 130 to publish the service to be published to the first lane 161 for verification; when the first verification stage is passed, the second verification stage is entered, and the two-stage grayscale publishing device 120 can drive the service publishing system 130 to publish the service to be published to the second lane 162 for verification. After the second verification stage is passed, the two-stage grayscale publishing device 120 can drive the service publishing system 130 to publish the service to be published to the third lane 163 to complete the entire publishing process. Specifically, the two-stage grayscale publishing device 120 can first drive the service publishing system 130 to set a first instance tag for the service to be published and publish the service to be published to the first lane 161. The first lane 161 corresponds to the first instance tag. All instances in the service to be published will be published to the first lane 161 after being set with the first instance tag; similarly, after the service to be published passes the first verification stage in the first lane 161, the two-stage grayscale publishing device 120 can drive the service publishing system 130 to set a second instance tag for the service to be published and publish the service to be published to the second lane 162. The second lane 162 corresponds to the second instance tag. All instances in the service to be published will be published to the second lane 162 after being set with the second instance tag; similarly, after the service to be published passes the second verification stage in the second lane 162, the two-stage grayscale publishing device 120 can drive the service publishing system 130 to publish the service to be published to the third lane 163. The third lane 163 has no instance tag, and the service publishing is completed at this time.

[0049] It can be seen that due to the logical isolation between lanes, product / business verification can be performed first, which is not perceived by users. User verification can be performed after the product / business verification is passed, which can prevent the mixing of user verification-related traffic during product / business verification, causing users to perceive abnormalities, thereby increasing the risk of online publishing. For example, when actual user-related traffic is added during business verification, users will also perceive errors in business verification, which reduces user experience and greatly increases the probability of user complaints. The two-stage grayscale publishing device adopted in the embodiment of the present application embodies internal verification first and then external verification in terms of publishing logic, thereby minimizing the impact on users during the publishing process, greatly improving publishing efficiency, and ensuring user experience at the same time.

[0050] Among them, the API gateway 140 is used to respond to requests from products / businesses / users, and request the authentication device 150 to obtain relevant information in the request. The relevant information may include the client version, user identification, etc. The API gateway 140 can merge the relevant information in the verification request information and send it to the two-stage grayscale release device 120. Specifically, the request here is a verification request required before the service is released, and the relevant information can be the request information parsed by the authentication device 150. It should be noted that different verification request information corresponds to different traffic. For example, the request information for product / business verification corresponds to the first traffic, and the request information for user verification corresponds to the second traffic. In response to the second traffic, the API gateway 140 can preferentially forward the product / business request to the authentication device 150, and forward the product / business verification request information fed back from the authentication device 150 to the two-stage grayscale publishing device 120. Then, after the product / business verification is passed, the API gateway 140 can forward the user request to the authentication device 150, and forward the user verification request information fed back by the authentication device 150 to the two-stage grayscale publishing device 120. It can be seen that this allows the two-stage grayscale publishing device 120 to determine the current publishing progress and publishing stage, which facilitates the two-stage grayscale publishing device 120 to execute the corresponding publishing strategy.

[0051] Specifically, in the first lane, the first verification can be performed on the service to be published through the first verification request information. Whether the first verification is passed depends on whether the first execution data matches the first standard execution data when the service to be published executes the function corresponding to the first verification request information. If the first execution data does not match the first standard execution data, the first verification fails. If the first execution data matches the first standard execution data, the first verification passes. Similarly, in the second lane, the second verification can be performed on the service to be published through the second verification request information of the preset proportion. Whether the second verification is passed depends on whether the second execution data matches the second standard execution data when the service to be published executes the function corresponding to the second verification request information of the preset proportion. If the second execution data does not match the second standard execution data, the second verification fails. If the second execution data matches the second standard execution data, the second verification passes. In this way, internal verification can be performed in the first lane first, and after the internal verification passes, external verification of the gradually open traffic ratio can be performed in the second lane to reduce the risk of verification errors being perceived by users.

[0052] Among them, the two-stage grayscale publishing device 120 includes a two-stage process engine 121, a first marker 122 and a second marker 123. The two-stage process engine 121 can be a computer program used to drive the normal operation of the service publishing of the two-stage process. The first marker 122 can set a first flow label for the flow containing a specific identifier, and the second marker 123 can set a second flow label for the flow of a specific flow ratio. Furthermore, the two-stage process engine 121 can choose to use the first marker 122 or the second marker 123 according to the current stage. Specifically, the two-stage process engine 121 can receive the request information forwarded from the API gateway 140. If the request information is a request information for product / business verification, the two-stage process engine 121 controls the first marker 122 to be turned on. The first marker 122 sets a first flow label for the first flow that meets the first feature identifier according to the first preset configuration strategy. After setting the first flow label for the first flow, the two-stage grayscale publishing device 120 will forward the first flow to the first lane 161 through the API gateway 140. Since there is a service to be released in the first lane 161 at this time, the service to be released can perform a first verification, namely, product / business verification, after the first flow enters the first lane 161. If the product / business verification passes, the two-stage process engine 121 can receive the user verification request information forwarded by the API gateway 140, control the first marker 122 to be turned off, and control the second marker 123 to be turned on. The second marker 123 can be based on the second preset configuration strategy. The configuration strategy sets the second flow label for the second flow of the specific flow gradient in sequence, such as setting the second label for 5% of the second flow, setting the second label for 10% of the second flow, etc., which will not be described in detail here. The two-stage grayscale publishing device 120 will first publish 5% of the second flow to the second lane 162. Since the two-stage grayscale publishing device 120 will publish the service to be published to the second lane 162 after the first-stage verification is passed, the service to be published can perform the second verification, i.e., user verification, after 5% of the second flow enters the second lane 162. If 5% of the first If the user verification of the second traffic is passed, the two-stage grayscale publishing device 120 can publish 10% of the second traffic to the second lane 162, and the service to be released can be user verified after 10% of the second traffic enters the second lane 162, and so on, until the largest proportion of the second traffic is forwarded to the second lane 162 and passes the user verification. At this time, the two-stage process engine 121 can close the second marker 123, and the service to be released is published to the third lane 163, and all the traffic becomes unlabeled and enters the third lane 163, thereby completing the service release.

[0053] Among them, the API gateway 140 can also forward the traffic with a traffic label to the corresponding lane through the label routing device. Since the first lane 161 corresponds to the first instance label, the second lane 162 corresponds to the second instance label, and the third lane 163 has no instance label, there is a mapping relationship between the first instance label and the first traffic label, and there is a mapping relationship between the second instance label and the second traffic label, that is, the traffic with the first traffic label needs to be forwarded to the first lane 161, and the traffic with the second traffic label needs to be forwarded to the second lane 162. Specifically, the API gateway 140 can forward the traffic with a traffic label to any business system through the label routing device, and the business system forwards the traffic with the traffic label to the corresponding lane through the label routing device, which will not be elaborated here.

[0054] The third lane 163 is the lane for final release. At the final release, all traffic is in an unlabeled state and returns to the third lane 163 to complete the service release process.

[0055] It can be understood that through the above system architecture, a two-stage service release process can be implemented without changing the release strategy according to different scenarios, ensuring stability. At the same time, internal verification and external verification are logically isolated to prevent external verification before internal verification is completed, greatly reducing the risk of service release.

[0056] The above system architecture is an exemplary description and does not represent a limitation on the present application. The present application can implement the service publishing method through other reasonable systems, which will not be elaborated here.

[0057] Combine the following Figure 2 The electronic device in the embodiment of the present application is described. Figure 2 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application is shown in FIG. Figure 2 As shown, the electronic device includes one or more processors 210, a memory 220, a communication module 230 and one or more programs 221. The processor 210 is communicatively connected with the memory 220 and the communication module 230 via an internal communication bus.

[0058] The one or more programs 221 are stored in the memory 220 and configured to be executed by the processor 210. The one or more programs 221 include instructions for executing any step in the method embodiment.

[0059] Among them, the processor 210 can be, for example, a central processing unit (CPU), a general processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. It can implement or execute various exemplary logic blocks, units and circuits described in conjunction with the disclosure of this application. The processor 210 can also be a combination that implements a computing function, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like. The communication unit can be a communication module 230, a transceiver, a transceiver circuit, etc., and the storage unit can be a memory 220.

[0060] The memory 220 may be a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memories. Among them, the nonvolatile memory may be a read-only memory (ROM), a programmable ROM (PROM), an erasable programmable ROM (EPROM), an electrically erasable programmable ROM (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of random access memory (RAM) are available, such as static RAM (SRAM), dynamic random access memory (DRAM), synchronous DRAM (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link DRAM (SLDRAM), and direct RAM bus random access memory (DR RAM).

[0061] It is understandable that the electronic device 200 may include more or fewer structural elements than those in the above structural block diagram, for example, including a power module, physical buttons, a Wi-Fi module, a speaker, a Bluetooth module, a sensor, a display module, etc., which are not limited here. The electronic device 200 may include Figure 1 The system architecture in will not be described in detail here.

[0062] After understanding the software and hardware architecture of the embodiment of the present application, Figure 3 A service publishing method in an embodiment of the present application is described. Figure 3 A flow chart of a service publishing method provided in an embodiment of the present application, the execution subject is the above electronic device, and specifically includes the following steps:

[0063] Step 301: set a first instance tag for the service to be published, and publish the service to be published to the first lane.

[0064] The first lane corresponds to the first instance tag. The service to be published is a service that needs to be published, and this is the first stage of the two-stage service publishing process.

[0065] It can be seen that setting the first instance tag for the service to be published and publishing the service to be published to the first lane can provide support for subsequent internal verification.

[0066] Step 302: Set a first flow label for the first verification request information according to a first preset configuration policy, and forward the first verification request information to the first lane.

[0067] The first verification request information may be a request for external verification, such as functional verification of a product or service, and the first preset configuration strategy may be setting a label for traffic containing a specific feature identifier.

[0068] Specifically, the first verification request information can be received, the first verification request information includes a first characteristic identifier, the traffic corresponding to the first verification request information is the first traffic, then, a first matching relationship between the first traffic label and the first instance label is established, and then the first traffic label is set for the first traffic carrying the first characteristic identifier, and finally, the first verification request information is forwarded to the first lane according to the first matching relationship.

[0069] For example, the traffic with user identification a in the traffic of the first verification request can be determined, and a first traffic label can be set for this part of the traffic. Since there is a first matching relationship between the first traffic label and the first instance label, it can be determined that the first verification request information corresponding to the first traffic needs to be forwarded to the first lane for the first verification.

[0070] It can be seen that by setting the first traffic label for the first verification request information according to the first preset configuration strategy and forwarding the first verification request information to the first lane, an exclusive traffic label can be set for the traffic during internal verification to isolate it from the external verification logic to avoid confusion.

[0071] Step 303: In the first lane, perform a first verification on the service to be published through the first verification request information.

[0072] The first verification may be a product / business verification, that is, an internal verification, and the first verification will not be perceived by actual users.

[0073] Among them, in the first lane, the first verification can be performed on the service to be published through the first verification request information. Whether the first verification is passed depends on whether the first execution data matches the first standard execution data when the service to be published executes the function corresponding to the first verification request information. If the first execution data does not match the first standard execution data, the first verification fails. If the first execution data matches the first standard execution data, the first verification passes. It can be understood that there may be many situations in which the first execution data and the first standard execution data do not match, such as the first execution data and the first standard execution data are different, the first execution data does not exist, the first standard execution data is empty but the first execution data is not empty, etc. As long as the service to be published fails to obtain the first standard execution data, it can be determined that the first verification has failed.

[0074] For example, the function corresponding to the first verification request information is "returning specific data in response to a click operation." The "specific data" here is the first standard execution data. The first standard execution data is set to "value x." The service to be published returns "value b" when executing this function. The "value b" here is the first execution data. It can be seen that the first execution data and the first standard execution data do not match, and the first verification fails.

[0075] It can be seen that in the first lane, performing the first verification on the service to be released through the first verification request information can ensure logical isolation from the second verification. At the same time, internal verification is performed first. Even if the verification fails, it can prevent actual users from perceiving it and avoid user complaints.

[0076] Step 304: If the first verification passes, set a second instance tag for the service to be published, and publish the service to be published to the second lane.

[0077] The second lane corresponds to the second instance label, and the second instance label needs to be different from the first instance label. This is the second stage of the two-stage service publishing process.

[0078] In a possible embodiment, if the first verification fails, the publishing process is interrupted and the service to be released is rolled back to a preset version. For example, the preset version may be an old version of the service to be released. At this time, since the first verification fails, it means that there are product / business improvements in the service to be released, and it is necessary to roll back to the old version for adjustment. This can improve the adjustment efficiency of developers.

[0079] In a possible embodiment, if the first execution data does not match the first standard execution data when the service to be released executes the function corresponding to the first verification request information, the first verification fails, and the first function that fails the first verification is determined; then, the first code corresponding to the first function is determined, and the first code can be determined by query statements and the like; then, the service to be released is compared with the historical service to determine the type of the first code, and the historical service can be an old version of the service; if the type of the first code is a newly added type, a first mark is set for the first code in the service to be released to obtain the first service to be adjusted. Since the first service to be adjusted has been marked with the first code, developers can more intuitively understand where adjustments need to be made, thereby improving adjustment efficiency.

[0080] Furthermore, the service to be released is compared with the historical service, and after determining the type of the first code, if the type of the first code is a modified type, a first historical code is determined, and the first historical code is the code corresponding to the last modification of the first code; the first historical service corresponding to the first historical code is determined, and the service to be released is rolled back to the first historical service. In this way, since there is a historical version and it can be determined that a problem has occurred in the modification, it can be rolled back to the first historical service, thereby improving adjustment efficiency.

[0081] It can be seen that by publishing the service to be released to the second lane after the first verification is passed, the logical isolation of internal verification and external verification can be achieved to avoid confusion. At the same time, internal verification before external verification can also ensure that while ensuring the release efficiency, complaints caused by poor user experience can be prevented.

[0082] Step 305: Set a second flow label for the second verification request information of a preset proportion according to a second preset configuration strategy, and forward the second verification request information of the preset proportion to the second lane.

[0083] The second preset configuration strategy may be to set the second flow labels for different flow ratios according to a gradient, such as setting the second flow labels for 5%, 10%, and 20% of the flow respectively, and gradually perform the second verification.

[0084] Among them, the second verification request information can be received, the traffic corresponding to the second verification request information is the second traffic, and then, a second matching relationship between the second traffic label and the second instance label is established; then, the initial traffic ratio is determined according to the gradient traffic ratio configuration, and the initial traffic ratio is determined as the preset ratio, and then the second traffic label is set for the second traffic of the initial traffic ratio, and finally, the second verification request information of the initial traffic ratio is forwarded to the second lane according to the second matching relationship to perform the first second verification.

[0085] Among them, the gradient flow configuration includes N-level flow ratios, N is a natural number greater than 1, and the first-level flow ratio in the N-level flow ratios is the initial flow ratio; for example, three-level flow ratios can be set, the initial flow ratio is 5%, the second-level flow ratio is 10%, and the maximum flow ratio is 15%. If the initial flow ratio is less than the ratio threshold, the following processing is performed on the second flow of the N-level flow ratio in the order of the flow ratio value from small to large until the flow ratio reaches the ratio threshold:

[0086] If the second flow of the nth level flow ratio passes the second verification, the n+1th level flow ratio is determined as the preset ratio, and the second flow label is set for the second flow of the nth level flow ratio to complete the step of setting the second flow label for the second verification request information of the nth level flow ratio, where n is a natural number greater than 0, and n+1 is less than or equal to N; according to the second matching relationship, the second verification request information of the n+1th level flow ratio is forwarded to the second lane.

[0087] For example, first set the second flow label for 5% of the second traffic, and forward 5% of the second traffic to the second lane for the second verification. If the second verification passes, set the second flow label for 10% of the second traffic, and forward 10% of the second traffic to the second lane for the second verification. If the second verification passes, set the second flow label for 15% of the second traffic, and forward 15% of the second traffic to the second lane for the second verification, and so on, until the second traffic with the largest flow ratio is set with a second flow label and forwarded to the second lane to complete the second verification.

[0088] It can be seen that according to the second preset configuration strategy, a second traffic label is set for the second verification request information of the preset proportion, and the second verification request information of the preset proportion is forwarded to the second lane. External verification can be performed after the internal verification is completed to ensure the logical isolation of internal and external verifications. At the same time, gradually opening up the traffic ratio can perform sufficient external verification.

[0089] Step 306: In the second lane, perform a second verification on the to-be-published service through the second verification request information with the preset ratio.

[0090] The second verification may be user verification, which is external verification in this case.

[0091] In the second lane, a second verification can be performed on the service to be published through the second verification request information with the preset proportion. Whether the second verification is passed depends on whether the second execution data matches the second standard execution data when the service to be published executes the function corresponding to the second verification request information with the preset proportion. If the second execution data does not match the second standard execution data, the second verification fails; if the second execution data matches the second standard execution data, the second verification passes.

[0092] In a possible embodiment, in the second lane, after performing the second verification on the preset proportion of services to be released through the second verification request information, if the second execution data does not match the second standard execution data when the service to be released executes the function corresponding to the preset proportion of the second verification request information, the second verification fails, and the second function that fails the second verification is determined; the second code corresponding to the second function is determined; if the second function is the same as the first function and the type of the first code is the newly added type, a second mark is set for the second code in the service to be released to obtain the second service to be adjusted; in this way, after the first verification fails and is adjusted, if the second verification with the same function as the first verification still fails, it can be quickly determined that the first code is still not modified correctly, and the second mark is directly set for the second code to reduce computing power overhead.

[0093] In a possible embodiment, if the second function is the same as the first function and the type of the first code is the modification type, the service to be released is rolled back to the first historical service. In this way, there is no need to query the second historical code corresponding to the second code, thereby reducing computing power overhead.

[0094] In a possible embodiment, if the second function is different from the first function, determining a second code corresponding to the second function; comparing the service to be published with the historical service to determine the type of the second code;

[0095] If the type of the second code is a new type, set a second mark for the second code in the service to be released to obtain the second service to be adjusted; if the type of the second code is a modified type, determine the second historical code, which is the code corresponding to the last modification of the second code; determine the second historical service corresponding to the second historical code, and roll back the service to be released to the second historical service.

[0096] In this way, external verification of the gradually opened traffic ratio can be performed in the second lane, reducing the risk of verification errors being perceived by users.

[0097] Step 307: If the second verification passes and the preset ratio reaches the ratio threshold, the service to be published is published to the third lane.

[0098] Among them, the third lane has no instance label. If the second verification passes and the preset ratio reaches the ratio threshold, the service to be published is published to the third lane, the setting of labels for the traffic is stopped, and the traffic in the unlabeled state is forwarded to the third lane to complete the publishing process.

[0099] In a possible embodiment, if any second verification fails, the publishing process is interrupted and the service to be published is rolled back to a preset version. For example, the preset version can be the previous version or an earlier version of the service to be published, which is not specifically limited here.

[0100] It can be seen that the above two-stage service release process is applicable to any scenario. There is no need to change the release strategy according to different scenarios, which ensures stability. At the same time, internal verification and external verification are logically isolated to prevent external verification before internal verification is completed, which greatly reduces the risk of service release.

[0101] For ease of understanding, the following Figure 4 The service publishing method in the embodiment of the present application is described in detail. Figure 4 A system interaction diagram of a service publishing method provided in an embodiment of the present application specifically includes the following steps:

[0102] S1, the publishing personnel configure the first preset configuration strategy and the second preset configuration strategy to the grayscale publishing configuration platform.

[0103] Among them, the publisher can edit the configuration strategy on the grayscale release configuration platform. For example, the first preset configuration strategy can be to set a first traffic label for the traffic with the characteristic identifier user_id=1234, and the second preset configuration strategy can be to set a second traffic label for 5% of the traffic, set a second traffic label for 10% of the traffic, and set a second traffic label for 20% of the traffic, respectively. No specific limitation is made here.

[0104] The first preset configuration strategy is applied to the first stage of verification, and the second preset configuration strategy is applied to the second stage of verification.

[0105] S2, the grayscale release configuration platform synchronizes the first preset configuration strategy and the second preset configuration strategy to the two-stage grayscale release device.

[0106] Among them, the grayscale release configuration platform can send the edited configuration strategy to the two-stage grayscale release device. By synchronizing the first preset configuration strategy and the second preset configuration strategy, there is no need to frequently change the release strategy according to different release scenarios, which greatly reduces the operational risk.

[0107] S3: The publisher starts publishing the services to be released.

[0108] S4, according to the current stage, the two-stage grayscale publishing device publishes the to-be-published services to different lanes through the service publishing system.

[0109] The lanes include a first lane, a second lane and a third lane.

[0110] In the first stage, the service to be released is released to the first lane. In the second stage, the service to be released is released to the second lane. Finally, the service to be released is released to the third lane to complete the service release process.

[0111] Specifically, the first stage is the initial stage, at which time the two-stage grayscale publishing device can drive the service publishing system to set the first instance tag for the service to be published and publish the service to be published to the first lane, which can be understood as deploying the service to be published to the first lane for subsequent first verification. By utilizing the characteristics of logical isolation between lanes, the first verification is performed first, and then after the first verification passes, the two-stage grayscale publishing device can drive the service publishing system to set the second instance tag for the service to be published and publish the service to be published to the second lane, which can be understood as deploying the service to be published to the second lane for subsequent second verification. Then after the second verification passes, the two-stage grayscale publishing device can drive the service publishing system to publish the service to be published to the third lane. The third lane has no instance tag, and the service publishing is completed at this time. S5, product / business personnel initiate a first verification request to the API gateway, or the end user initiates a second verification request to the API gateway.

[0112] In a possible embodiment, the first verification request may be initiated first, and the second verification request may be initiated after the first verification passes. Alternatively, the API gateway may receive the first verification request first, and the second verification request may be received after the first verification passes. In this way, the flexibility of verification request transmission can be improved while ensuring that internal verification is performed before external verification.

[0113] S6, the API gateway parses the authentication information through the authentication device and obtains specific information therein.

[0114] The specific information may include information such as user ID or client version. The authentication device may obtain request information in the verification request, which may include user information, etc. The request information may be used to determine whether the device is currently in the first or second stage. When the request information is for product / business verification, the two-stage grayscale release device may determine that the device is currently in the first stage. When the request information is for user verification, the two-stage grayscale release device may determine that the device is currently in the second stage.

[0115] S7, the API gateway sends specific information to the two-stage grayscale release device.

[0116] For example, the API gateway can append specific information to the request header and send it to the two-stage grayscale publishing device. The API gateway can forward the request information of the first verification to the two-stage grayscale publishing device. After the first verification is passed, the API gateway can forward the request information of the second verification to the two-stage grayscale publishing device. This allows the two-stage grayscale publishing device to execute the first preset configuration strategy in the first stage and the second preset configuration strategy in the second stage.

[0117] S8, the two-stage process engine sets a flow label for the flow using the first marker or the second marker according to the current stage.

[0118] In the first stage, i.e., the first verification request process of the product / business personnel, the first marker is used, and in the second verification request of the terminal user, the second marker is used. The second stage is performed after the first stage is completed.

[0119] Specifically, the first marker may set a first flow label for the flow containing a specific identifier, and the second marker may set a second flow label for the flow of a specific flow ratio. Further, the two-stage process engine can choose to use the first marker or the second marker according to the current stage. The two-stage process engine can receive request information forwarded from the API gateway. If the request information is a request information for product / business verification, the two-stage process engine controls the first marker to be turned on. The first marker sets a first flow label for the first flow that meets the first characteristic identifier according to the first preset configuration strategy. After setting the first flow label for the first flow, the two-stage grayscale publishing device will forward the first flow to the first lane through the API gateway. Since there are services to be released in the first lane at this time, the services to be released can perform a first verification, namely, product / business verification, after the first flow enters the first lane. If the product / business verification passes, the two-stage process engine can receive user verification request information forwarded from the gateway 140, control the first marker to be turned off, and control the second marker to be turned on. The second marker can set a second flow label for the second flow of a specific flow gradient in sequence according to the second preset configuration strategy, such as setting a second label for 5% of the second flow, setting a second label for 10% of the second flow, etc., which will not be repeated here.

[0120] S9: The API gateway forwards the traffic with the traffic label set to business system A.

[0121] Among them, the traffic with the traffic label set can be forwarded to the business system A through the label routing device, and the business system A can be any business system.

[0122] Specifically, the API gateway can forward the first traffic with the first traffic label set to business system A through the label routing device. The API gateway can sequentially forward the second traffic with the second traffic label set to business system A through the label routing device. For example, the API gateway can forward 5% of the second traffic to business system A through the label routing device, and then forward 10% of the second traffic to business system A through the label routing device, and so on, until the largest proportion of the second traffic is forwarded to business system A.

[0123] S10, business system A forwards the traffic to the corresponding lane through the label routing device and the matching relationship between the traffic label and the instance label.

[0124] The first flow with the first flow label is forwarded to the first lane, and the second flow with the second flow label is forwarded to the second lane.

[0125] For example, business system A can forward 5% of the second traffic to the second lane through the label routing device, and then forward 10% of the second traffic to the second lane through the label routing device, and so on, until the largest proportion of the second traffic is forwarded to the second lane. In this way, a second verification with a gradually increasing traffic proportion can be performed to prevent a large number of users from having poor experience due to verification failure, and to facilitate timely adjustment of services to be released.

[0126] S11, after the second verification is passed, the two-stage grayscale publishing device drives the service publishing system to publish the service to be published to the third lane, and closes the first marker and the second marker, and the traffic returns to the third lane to complete the service publishing process.

[0127] It can be seen that through the above-mentioned system interaction process, the relevant grayscale configuration can be solidified in the two-stage grayscale publishing device. During the publishing process, it is only necessary to promote the publishing according to the process without modifying the configuration, and the product / business verification process, the process of functional verification for a small number of users, and the process of full user function use can be logically isolated, so as to prevent the product / business from being opened to all users without sufficient verification, which leads to the risk of online publishing. Since there is a logical isolation between the lanes, the product / business verification can be performed first, and the user is not aware of it at this time. After the product / business verification is passed, the user verification can be performed again, which can prevent the relevant traffic of user verification from being mixed into the product / business verification, causing the user to perceive the abnormality, thereby increasing the risk of online publishing. For example, when the actual user-related traffic is added during the business verification, the user will also perceive the business verification error, which reduces the user experience and greatly increases the probability of being complained by the user. The two-stage grayscale publishing device adopted in the embodiment of the present application reflects the internal verification first and then the external verification in the publishing logic, thereby minimizing the impact on the user during the publishing process, greatly improving the publishing efficiency, and ensuring the user experience at the same time.

[0128] Combine the following Figure 5 The execution process of the two-stage grayscale publishing device in the embodiment of the present application is described. Figure 5 A schematic diagram of the execution flow of a two-stage grayscale release device provided in an embodiment of the present application specifically includes the following steps:

[0129] Step 501: The two-stage grayscale publishing device drives the service publishing system to publish the service to be published to the first lane.

[0130] The two-stage grayscale publishing device may set a first instance tag for the service to be published to publish the service to be published to the first lane.

[0131] Step 502: The two-stage grayscale publishing device starts a first labeler to set a first flow label for a first flow that meets a first characteristic identifier.

[0132] The first traffic will be forwarded to the first lane for a first verification.

[0133] Among them, the two-stage process engine can receive request information forwarded from the API gateway. If the request information is request information for product / business verification, the two-stage process engine controls the first marker to start, and the first marker sets the first traffic label for the first traffic that meets the first characteristic identifier according to the first preset configuration strategy.

[0134] Step 503: If the first verification passes, the two-stage grayscale publishing device drives the service publishing system to publish the service to be published to the second lane.

[0135] The two-stage grayscale publishing device may set a second instance tag for the service to be published to publish the service to be published to the second lane.

[0136] Step 504: If the first verification fails, the two-stage grayscale publishing device shuts down the first marker and rolls back the service to be published.

[0137] Among them, this is product / business verification, and the service to be released can be rolled back to the corresponding version in time to facilitate adjustments by developers.

[0138] Step 505: The two-stage grayscale publishing device starts the second labeler and sets a second traffic label for the traffic according to the initial traffic ratio.

[0139] Among them, the two-stage process engine can receive user verification request information forwarded by the API gateway, control the first marker to close, and control the second marker to open. The second marker can set the second flow label for the second flow of a specific flow gradient in sequence according to the second preset configuration strategy, such as setting the second label for 5% of the second flow, setting the second label for 10% of the second flow, etc., which will not be elaborated here. The 5% second flow here is the initial flow ratio.

[0140] Step 506, determining whether the second verification is passed.

[0141] Step 507: If the second verification passes, determine whether the second preset configuration strategy is completed.

[0142] If the second preset configuration strategy is not completed, step 509 is executed; if the second preset configuration strategy is completed, step 510 is executed.

[0143] Step 508: If the second verification fails, the two-stage grayscale publishing device shuts down the second marker and rolls back the service to be published.

[0144] Among them, this is user verification, and the service to be released can be rolled back to the corresponding version in time to facilitate adjustments by developers. At the same time, when the second traffic is 5%, failure of the second verification will only affect a small number of users, which can avoid more poor user experience.

[0145] Step 509: The two-stage grayscale publishing device adjusts the flow ratio according to the gradient flow ratio configuration, and sets a second flow label for the second flow of the adjusted flow ratio.

[0146] The gradient flow ratio configuration is from the second preset configuration strategy. If the second verification is passed at the second flow of 5%, the flow ratio can be adjusted to 10%, and the second flow label is set for the second flow of 10%, and then the process returns to step 506. The process is analogous to that until the second preset configuration strategy is completed, that is, the maximum flow ratio has been reached, and the second flow of the maximum flow ratio has undergone the second verification.

[0147] Step 510: The two-stage grayscale publishing device drives the service publishing system to publish the service to be published to the third lane.

[0148] Step 511, the two-stage grayscale publishing device stops the first marker and the second marker, and the traffic enters the third lane to complete the service publishing process.

[0149] It can be seen that through the above service publishing method, the relevant grayscale configuration can be solidified in the two-stage grayscale publishing device. During the publishing process, it is only necessary to promote the publishing according to the process without modifying the configuration, and the product / service verification process, the process of functional verification for a small number of users, and the process of full user function use can be logically isolated, so as to prevent the product / service from being opened to all users without sufficient verification, thereby preventing the risk of online publishing. Since there is logical isolation between lanes, product / service verification can be performed first, and users cannot perceive it at this time. After the product / service verification is passed, user verification can be performed, which can prevent the relevant traffic of user verification from being mixed into the product / service verification, causing users to perceive abnormalities, thereby increasing the risk of online publishing. For example, when the actual user-related traffic is added during the business verification, the user will also perceive when the business verification fails, which reduces the user experience and greatly increases the probability of being complained by users. The two-stage grayscale publishing device used in the embodiment of the present application reflects the internal verification first and then the external verification in the publishing logic, thereby minimizing the impact on users during the publishing process, greatly improving the publishing efficiency, and ensuring the user experience at the same time.

[0150] The steps not described in detail above can be found in Figure 3 , Figure 4 The description of the steps of the method will not be repeated here.

[0151] The above mainly introduces the scheme of the embodiment of the present application from the perspective of the execution process on the method side. It is understandable that, in order to realize the above functions, the electronic device includes a hardware structure and / or software module corresponding to the execution of each function. It should be easily appreciated by those skilled in the art that, in combination with the units and algorithm steps of each example described in the embodiments provided herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present application.

[0152] The embodiment of the present application can divide the electronic device into functional units according to the above method example. For example, each functional unit can be divided according to each function, or two or more functions can be integrated into one processing unit. The above integrated unit can be implemented in the form of hardware or in the form of software functional units. It should be noted that the division of units in the embodiment of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation.

[0153] In the case of dividing each functional module into corresponding functional modules, Figure 6 A functional unit composition block diagram of a service publishing device 600 provided in an embodiment of the present application, the device comprising:

[0154] A first publishing unit 610, configured to set a first instance tag for the service to be published, and publish the service to be published to a first lane;

[0155] A first forwarding unit 620, configured to set a first flow label for the first verification request information according to a first preset configuration policy, and forward the first verification request information to the first lane;

[0156] A first verification unit 630, configured to perform a first verification on the to-be-published service in the first lane through the first verification request information;

[0157] A second publishing unit 640 is configured to set a second instance tag for the service to be published and publish the service to be published to a second lane if the first verification passes;

[0158] A second forwarding unit 650 is used to set a second flow label for a preset proportion of second verification request information according to a second preset configuration strategy, and forward the preset proportion of second verification request information to the second lane;

[0159] A second verification unit 660, configured to perform a second verification on the to-be-published service in the second lane through the second verification request information of the preset proportion;

[0160] The third publishing unit 670 is configured to publish the service to be published to a third lane if the second verification passes and the preset ratio reaches a ratio threshold.

[0161] It can be seen that through the above service publishing method and related devices, first, a first instance tag is set for the service to be published, and the service to be published is published to the first lane; a first flow tag is set for the first verification request information according to the first preset configuration strategy, and the first verification request information is forwarded to the first lane; in the first lane, the first verification is performed on the service to be published through the first verification request information; if the first verification passes, a second instance tag is set for the service to be published, and the service to be published is published to the second lane; a second flow tag is set for the second verification request information of a preset proportion according to the second preset configuration strategy, and the second verification request information of the preset proportion is forwarded to the second lane; in the second lane, a second verification is performed on the service to be published through the second verification request information of the preset proportion; if the second verification passes and the preset proportion reaches the proportion threshold, the service to be published is published to the third lane. Since a two-stage service publishing process is configured, there is no need to change the publishing strategy according to different scenarios, which ensures stability. At the same time, internal verification and external verification are logically isolated to prevent external verification before internal verification is completed, which greatly reduces the risk of service publishing.

[0162] It should be noted that the specific implementation of each operation can adopt the corresponding description of the method embodiment shown above, and the service publishing device 600 can be used to execute the above method embodiment of the present application, which will not be repeated here.

[0163] An embodiment of the present application also provides a computer storage medium, wherein the computer storage medium stores a computer program for electronic data exchange, wherein the computer program enables a computer to execute part or all of the steps of any method recorded in the above method embodiment, and the above computer includes an electronic device.

[0164] The embodiment of the present application also provides a computer program product, the computer program product includes a non-transitory computer-readable storage medium storing a computer program, the computer program is operable to cause a computer to execute some or all of the steps of any method described in the method embodiment. The computer program product may be a software installation package, and the computer includes an electronic device.

[0165] It should be noted that, for the above-mentioned various embodiments, for the sake of simple description, they are all expressed as a series of action combinations. Those skilled in the art should be aware that the present application is not limited by the described order of actions, because some steps in the embodiments of the present application can be performed in other orders or simultaneously. In addition, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions, steps, modules or units involved are not necessarily required by the embodiments of the present application.

[0166] In the above embodiments, the embodiments of the present application have different focuses on the description of each embodiment. For parts that are not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0167] The steps of the method or algorithm described in the embodiments of the present application can be implemented in hardware or by executing software instructions by a processor. The software instructions can be composed of corresponding software modules, and the software modules can be stored in RAM, flash memory, ROM, EPROM, electrically erasable programmable read-only memory (electrically EPROM, EEPROM), registers, hard disks, mobile hard disks, read-only compact disks (CD-ROMs) or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can be located in an ASIC. In addition, the ASIC can be located in a terminal device or a management device. Of course, the processor and the storage medium can also be present in a terminal device or a management device as discrete components.

[0168] Those skilled in the art should be aware that in one or more of the above examples, the functions described in the embodiments of the present application can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiments of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer neural network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrations. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a digital video disc (DVD)), or a semiconductor medium (eg, a solid state disk (SSD)).

[0169] The modules / units included in the devices and products described in the above embodiments may be software modules / units or hardware modules / units, or may be partially software modules / units and partially hardware modules / units. For example, for the devices and products applied to or integrated in the chip, the modules / units included therein may all be implemented in the form of hardware such as circuits, or at least some of the modules / units may be implemented in the form of software programs, which run on the processor integrated inside the chip, and the remaining (if any) modules / units may be implemented in the form of hardware such as circuits; for the devices and products applied to or integrated in the chip module, the modules / units included therein may all be implemented in the form of hardware such as circuits, and different modules / units may be located in the same component (such as a chip, circuit module, etc.) or in different components of the chip module, or at least some of the modules / units may be implemented in the form of software programs. The software programs run on the processor integrated inside the chip, and the remaining (if any) modules / units may be implemented in the form of hardware such as circuits. It is implemented in the form of a software program, which runs on a processor integrated inside the chip module, and the remaining (if any) modules / units can be implemented in hardware such as circuits; for various devices and products applied to or integrated in the terminal equipment, the various modules / units contained therein can be implemented in hardware such as circuits, and different modules / units can be located in the same component (for example, chip, circuit module, etc.) or in different components in the terminal equipment, or, at least some modules / units can be implemented in the form of a software program, which runs on a processor integrated inside the terminal equipment, and the remaining (if any) modules / units can be implemented in hardware such as circuits.

[0170] The specific implementation methods described above further illustrate the purpose, technical solutions and beneficial effects of the embodiments of the present application. It should be understood that the above description is only the specific implementation method of the embodiments of the present application and is not intended to limit the protection scope of the embodiments of the present application. Any modifications, equivalent substitutions, improvements, etc. made on the basis of the technical solutions of the embodiments of the present application should be included in the protection scope of the embodiments of the present application.

Claims

1. A service publishing method, characterized in that: The method comprises: Setting a first instance tag for the service to be published, and publishing the service to be published to the first lane; Setting a first flow label for the first verification request information according to a first preset configuration strategy, and forwarding the first verification request information to the first lane; In the first lane, performing a first verification on the to-be-published service through the first verification request information; If the first verification passes, setting a second instance tag for the service to be published, and publishing the service to be published to the second lane; Setting a second flow label for a preset proportion of second verification request information according to a second preset configuration strategy, and forwarding the preset proportion of second verification request information to the second lane; In the second lane, performing a second verification on the to-be-published service through the second verification request information of the preset proportion; If the second verification passes and the preset ratio reaches the ratio threshold, the to-be-published service is published to the third lane.

2. The method according to claim 1, characterized in that The step of setting a first flow label for the first verification request information according to the first preset configuration strategy and forwarding the first verification request information to the first lane includes: receiving the first verification request information, where the first verification request information includes a first feature identifier, and the flow corresponding to the first verification request information is a first flow; Establishing a first matching relationship between a first traffic label and the first instance label; Setting the first flow label for the first flow carrying the first characteristic identifier to complete the step of setting the first flow label for the first verification request information; The first verification request information is forwarded to the first lane according to the first matching relationship.

3. The method according to claim 1, characterized in that After performing the first verification on the to-be-published service through the first verification request information in the first lane, the method further includes: If the first execution data does not match the first standard execution data when the to-be-published service executes the function corresponding to the first verification request information, the first verification fails, and the first function that fails the first verification is determined; Determining a first code corresponding to the first function; Compare the service to be published with the historical service to determine the type of the first code; If the type of the first code is a newly added type, a first mark is set for the first code in the service to be released to obtain a first service to be adjusted.

4. The method according to claim 3, characterized in that After comparing the service to be published with the historical service to determine the type of the first code, the method further includes: If the type of the first code is a modification type, determining a first historical code, where the first historical code is a code corresponding to the last modification of the first code; A first historical service corresponding to the first historical code is determined, and the to-be-published service is rolled back to the first historical service.

5. The method according to claim 1, characterized in that The step of setting a second flow label for a preset proportion of second verification request information according to a second preset configuration strategy, and forwarding the preset proportion of second verification request information to the second lane includes: receiving the second verification request information, where the flow corresponding to the second verification request information is the second flow; Establishing a second matching relationship between the second flow label and the second instance label; Determine an initial flow ratio according to the gradient flow ratio configuration, and determine the initial flow ratio as the preset ratio; Setting the second flow label for the second flow of the initial flow ratio to complete the step of setting the second flow label for the second verification request information of the initial flow ratio; The second verification request information of the initial traffic ratio is forwarded to the second lane according to the second matching relationship.

6. The method according to claim 4, wherein the gradient flow ratio configuration comprises N levels of flow ratios, N is a natural number greater than 1, and the first level of flow ratio in the N levels of flow ratios is the initial flow ratio; After forwarding the second verification request information of the initial traffic ratio to the second lane according to the second matching relationship, the method further includes: If the initial flow ratio is less than the ratio threshold, the following processing is performed on the second flow of the N-level flow ratio in ascending order of flow ratio values ​​until the flow ratio reaches the ratio threshold: If the second flow of the nth level flow ratio passes the second verification, the n+1th level flow ratio is determined as the preset ratio, and the second flow label is set for the second flow of the nth level flow ratio, so as to complete the step of setting the second flow label for the second verification request information of the nth level flow ratio, where n is a natural number greater than 0, and n+1 is less than or equal to N; The second verification request information of the n+1th level traffic proportion is forwarded to the second lane according to the second matching relationship.

7. The method according to any one of claims 4 to 6, characterized in that: After performing the second verification on the preset proportion of services to be released in the second lane through the second verification request information, the method further includes: If the second execution data does not match the second standard execution data when the to-be-published service executes the function corresponding to the second verification request information of the preset proportion, the second verification fails, and the second function that fails the second verification is determined; Determine a second code corresponding to the second function; If the second function is the same as the first function and the type of the first code is the newly added type, setting a second mark for the second code in the service to be released to obtain a second service to be adjusted; If the second function is the same as the first function and the type of the first code is the modification type, the service to be released is rolled back to the first historical service.

8. A service publishing device, characterized in that: The device comprises: A first publishing unit, configured to set a first instance tag for the service to be published, and publish the service to be published to a first lane; A first forwarding unit, configured to set a first flow label for the first verification request information according to a first preset configuration policy, and forward the first verification request information to the first lane; A first verification unit, configured to perform a first verification on the to-be-published service in the first lane through the first verification request information; A second publishing unit, configured to set a second instance tag for the service to be published and publish the service to be published to a second lane if the first verification passes; A second forwarding unit, configured to set a second flow label for a preset proportion of second verification request information according to a second preset configuration strategy, and forward the preset proportion of second verification request information to the second lane; A second verification unit, configured to perform a second verification on the to-be-published service in the second lane through the second verification request information of the preset proportion; The third publishing unit is configured to publish the service to be published to a third lane if the second verification passes and the preset ratio reaches a ratio threshold.

9. An electronic device, characterized in that: include: A processor, a memory, and one or more programs; the one or more programs are stored in the memory and are configured to be executed by the processor, the programs comprising instructions for executing the steps in the method according to any one of claims 1 to 7.

10. A computer storage medium, characterized in that: The computer storage medium stores a computer program, wherein the computer program includes program instructions, and when the program instructions are executed by a processor, the processor is caused to perform the method according to any one of claims 1 to 7.