CN112118565B - Multi-tenant service gray level publishing method, device, computer equipment and storage medium - Google Patents

Multi-tenant service gray level publishing method, device, computer equipment and storage medium Download PDF

Info

Publication number
CN112118565B
CN112118565B CN202010817357.4A CN202010817357A CN112118565B CN 112118565 B CN112118565 B CN 112118565B CN 202010817357 A CN202010817357 A CN 202010817357A CN 112118565 B CN112118565 B CN 112118565B
Authority
CN
China
Prior art keywords
service
service instance
tenant
request
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010817357.4A
Other languages
Chinese (zh)
Other versions
CN112118565A (en
Inventor
续航
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kingdee Medical Software Technology Co ltd
Original Assignee
Kingdee Medical Software Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kingdee Medical Software Technology Co ltd filed Critical Kingdee Medical Software Technology Co ltd
Priority to CN202010817357.4A priority Critical patent/CN112118565B/en
Publication of CN112118565A publication Critical patent/CN112118565A/en
Application granted granted Critical
Publication of CN112118565B publication Critical patent/CN112118565B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
    • H04W8/183Processing at user equipment or user record carrier
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
    • H04W8/20Transfer of user or subscriber data
    • H04W8/205Transfer to or from user equipment or user record carrier
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The application relates to a multi-tenant service gray level publishing method, a device, computer equipment and a storage medium. The method comprises the following steps: receiving a service request sent by a terminal through a gateway, wherein the service request comprises a tenant identifier; determining downstream service instance information corresponding to the tenant identification according to the tenant identification; if the downstream service instance information carries the label service instance information of the tenant identification, the service request is sent to a label service instance in the label service instance information; and processing the service request by using the tag service instance to obtain a result corresponding to the service request and returning the result to the terminal. By adopting the method, the service request of the specific tenant can be routed to the appointed service instance, a series of complicated operations such as restarting and loading service configuration are avoided, the stability of the service system during updating and iteration can be ensured, and the efficiency of gray level release of the multi-tenant service is effectively improved.

Description

Multi-tenant service gray level publishing method, device, computer equipment and storage medium
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a method and apparatus for gray scale publishing of a multi-tenant service, a computer device, and a storage medium.
Background
With the development of computer technology and the advent of the 5G age, the appearance of the Internet brings great convenience to modern life, and more enterprises can process various services online by using a service platform, so that the service handling efficiency is effectively improved. In the micro-service architecture of the existing service system, when a new version of micro-service example needs to be released, gray level release can provide effective guarantee for the micro-service of quick iteration, and the user range influenced by product upgrading is reduced.
When service gray level publishing in a multi-tenant scenario is involved, service instances of different versions need to be published for different tenants and accesses of different tenants need to be isolated. However, in the current gray level release micro-service mode, when gray level release is performed by adopting a routing mode carried by a client in a spring group architecture, even when a plurality of instances of different versions are deployed under the same service, the requests sent by tenants are evenly distributed to each instance, and the service requirements of routing to a designated service instance and isolating different tenants according to tenant information cannot be realized, so that the gray level release efficiency of the multi-tenant service is low easily.
Disclosure of Invention
In view of the foregoing, it is desirable to provide a multi-tenant service gradation release method, apparatus, computer device, and storage medium that can improve the efficiency of multi-tenant service gradation release.
A multi-tenant service gray level publication method, the method comprising:
receiving a service request sent by a terminal through a gateway, wherein the service request comprises a tenant identifier;
determining downstream service instance information corresponding to the tenant identification according to the tenant identification;
if the downstream service instance information carries the label service instance information of the tenant identification, the service request is sent to a label service instance in the label service instance information;
and processing the service request by using the tag service instance to obtain a result corresponding to the service request and returning the result to the terminal.
In one embodiment, before the receiving terminal sends the service request through the gateway, the method further includes:
establishing a gray service instance cluster in a configuration interface, and binding or deleting a specific tenant identification in the gray service instance cluster to obtain updated configuration information;
Receiving a resource acquisition request sent by the terminal in a polling mode;
and returning the updated configuration information to the terminal according to the resource acquisition request, wherein the updated configuration information is used for indicating the terminal to update metadata in a memory, and calling a gray scale service instance in the updated configuration information.
In one embodiment, after the receiving terminal sends the service request through the gateway, the method further includes:
and according to the tenant identification, if the downstream service instance information corresponding to the tenant identification does not exist, sending the service request to the corresponding non-gray service instance according to the original routing strategy.
In one embodiment, after the step of sending the service request to the tag service instance in the tag service instance information after the step of carrying the tag service instance information identified by the tenant in the downstream service instance information, the method further includes:
acquiring all tag service instance information lists carrying the tenant identifications;
and calling the corresponding tag service instance from the tag service instance information list according to a preset weight proportion.
In one embodiment, the method further comprises:
and if the downstream service instance information does not carry the label service instance information of the tenant identification, sending the service request to a corresponding non-gray downstream service instance according to the original routing strategy.
In one embodiment, before the receiving terminal sends the service request through the gateway, the method further includes:
and configuring the attribute of the service request sent by the terminal in the basic data packet, so that the gateway extracts the corresponding tenant identification from the service request sent by the terminal, adds the tenant identification into the service request, and forwards the service request to the corresponding downstream service instance.
In one embodiment, the processing the service request with the tag service instance includes:
in the asynchronous thread, when the tag service instance needs to call other service instances to process the service request, the tenant identification is preferentially obtained from the gateway thread; and the tenant identification is used for calling the service instance version matched with the tenant identification from service instances of different versions corresponding to the same service when calling between the service instances.
A multi-tenant service gray-scale publication apparatus, the apparatus comprising:
the receiving module is used for receiving a service request sent by the terminal through the gateway, wherein the service request comprises a tenant identifier;
the determining module is used for determining downstream service instance information corresponding to the tenant identification according to the tenant identification;
the sending module is used for sending the service request to the tag service instance in the tag service instance information if the downstream service instance information carries the tag service instance information of the tenant identifier;
and the processing module is used for processing the service request by utilizing the tag service instance to obtain a result corresponding to the service request and returning the result to the terminal.
A computer device comprising a memory storing a computer program and a processor which when executing the computer program performs the steps of:
receiving a service request sent by a terminal through a gateway, wherein the service request comprises a tenant identifier;
determining downstream service instance information corresponding to the tenant identification according to the tenant identification;
if the downstream service instance information carries the label service instance information of the tenant identification, the service request is sent to a label service instance in the label service instance information;
And processing the service request by using the tag service instance to obtain a result corresponding to the service request and returning the result to the terminal.
A computer readable storage medium having stored thereon a computer program which when executed by a processor performs the steps of:
receiving a service request sent by a terminal through a gateway, wherein the service request comprises a tenant identifier;
determining downstream service instance information corresponding to the tenant identification according to the tenant identification;
if the downstream service instance information carries the label service instance information of the tenant identification, the service request is sent to a label service instance in the label service instance information;
and processing the service request by using the tag service instance to obtain a result corresponding to the service request and returning the result to the terminal.
According to the multi-tenant service gray level publishing method, device, computer equipment and storage medium, when service gray level publishing in a multi-tenant scene is involved, different tenants need to be isolated and service instances of different versions are published, a server receives a service request sent by a terminal through a gateway, and the service request comprises tenant identification. And the server determines downstream service instance information corresponding to the tenant identification according to the tenant identification. If the server finds that the downstream service instance information carries the label service instance information of the tenant identification, the service request is sent to the label service instance in the label service instance information, the service request is processed by the label service instance, and a result corresponding to the service request is obtained and returned to the terminal. Therefore, when different tenants need to be isolated and service instances of different versions are released, only the configuration center of the server is required to change the routing configuration information, different tenants are bound to different service clusters, and a call link for dynamically adjusting service gray release based on different service scenes can be realized, so that service requests of specific tenants are routed to a designated service instance, a series of complicated operations such as restarting and loading service configuration are avoided, stability of a service system during updating and iteration can be guaranteed, and meanwhile, the efficiency of multi-tenant service gray release is effectively improved.
Drawings
FIG. 1 is an application environment diagram of a multi-tenant service gray level publication method in one embodiment;
FIG. 2 is a flow diagram of a multi-tenant service gray level distribution method in one embodiment;
FIG. 3 is a flowchart illustrating a step of establishing a gray scale service instance cluster in one embodiment;
FIG. 4 is a flowchart of a multi-tenant service gray level distribution method according to another embodiment;
FIG. 5 is a block diagram of a multi-tenant service gray-scale distribution device in one embodiment;
fig. 6 is an internal structural diagram of a computer device in one embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application will be further described in detail with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the present application.
The multi-tenant service gray level publishing method provided by the application can be applied to an application environment shown in fig. 1. Wherein the terminal 102 communicates with the server 104 via a network. The terminal 102 may acquire service processing data corresponding to the service request from the server 104 by transmitting the service request to the server 104. The server 104 receives a service request sent by the terminal 102 through the gateway, where the service request includes a tenant identifier. Server 104 determines, from the tenant identity, downstream service instance information corresponding to the tenant identity. If the server 104 detects that the downstream service instance information carries the tag service instance information of the tenant identifier, the server 104 sends the service request to the tag service instance in the tag service instance information. The server 104 processes the service request by using the tag service instance, and obtains a result corresponding to the service request and returns the result to the terminal 102. The terminal 102 may be, but not limited to, various personal computers, notebook computers, smartphones, tablet computers, and portable wearable devices, and the server 104 may be implemented by a stand-alone server or a server cluster composed of a plurality of servers.
In one embodiment, as shown in fig. 2, a multi-tenant service gray level publishing method is provided, and the method is applied to the server in fig. 1 for illustration, and includes the following steps:
step 202, receiving a service request sent by a terminal through a gateway, wherein the service request includes a tenant identifier.
Terminals are a type of embedded computer system device, and software structures can be divided into system software and application software. In the software structure of the terminal, the system software is mainly an operating system and middleware, and common terminal operating systems include apple IOS, google Android, hewlett packard WebOS, open source MeeGo, microsoft Windows and the like. In application software of the terminal, a developer can use a micro-service architecture to create applications of different service functions around service domain components, the applications can be independently developed, managed and updated, and deployment, management and service function delivery can be simpler by using the micro-service cloud architecture and platform in a scattered component. Currently commonly used micro-service frameworks are mainly Spring Cloud and Dubbo (or Dubbox). The Spring Cloud micro-service framework can be used in the present application. Micro-services are an emerging software architecture that can split a large single application and service into tens of supporting micro-services. Micro services are products under the SOA architecture, the design goal is to dismiss the services so that the services can run independently, the policy of the micro services can make the work simpler and more convenient, and the micro services can extend single components instead of the whole application program stack so as to meet the service level agreement. The users using different operating system terminal devices can download various types of application programs through the application market interface in the terminal, and the application programs can comprise a system application program, a desktop application program, a driving application program, a network application program, an Internet of things application program and the like. From the different service function divisions of the user application programs, the application programs can also comprise instant messaging application programs, online shopping application programs, video and audio entertainment application programs and the like. When the service release is online or the server application needs to be upgraded in the existing system, a gray release service mode can be adopted. Gray scale distribution (also known as canary distribution) refers to a distribution pattern that enables smooth transitions between black and white. In gray level distribution, A/B test can be performed, namely, a part of users continue to use the product characteristic A, a part of users start to use the product characteristic B, if the users do not have any objection to B, the range is gradually expanded, and all users are migrated to the top of B. The gray level release can ensure the stability of the whole system, and the problems can be found and adjusted during the initial gray level so as to ensure the influence degree. In the rapid iteration process of the service version, the gray version and the formal version can coexist, the gray version is gradually put into the upgrade formal version, so that service is not required to be stopped for a period of time in the release process of the service update version, the transition process between different versions can be monitored, and once the gray version is found to have a problem, the gray version can be rapidly returned to the original formal version state.
Specifically, a user can log in a service system of a specific scene by inputting a user name and a password in a mobile phone Application program or a browser webpage, the user can initiate a specific service request through an app (Application) client or a web client, namely a web browser, and a server can receive the service request sent by a terminal through a gateway, wherein the service request comprises a tenant identification. The client or the user terminal refers to a program corresponding to the server and providing local service for the user. Except for some applications that only run locally, they are typically installed on a common client and need to run in conjunction with the server. Clients may include DNS clients, web clients, game clients, mobile clients, and the like. For example, the mobile client uses a mobile phone as an example, and the mobile client is software that can run on the mobile phone terminal. The service request refers to a service request corresponding to a service function initiated by a user in different service scene systems according to different requirements. The gateway refers to a service gateway for providing a unified service portal, and the service gateway may include a Zuul gateway, where Zuul is a gateway component in a Spring Cloud micro service framework, i.e. a micro service API gateway. Tenant identification is used to identify unique tenant information. Corresponding tenant information can be created according to different enterprise types in the business system, business data among tenants are completely isolated, and the business data can comprise business service data, worksheets data, organization data and the like. For the same tenant, the service system partitions the user management center and the application management center corresponding to the tenant, and the user management center uses a unified set of organization, role information and user information, namely, the data of the organization, the role, the user and the like which are uniformly set, and can be shared by all departments in the same tenant. Different departments of the tenant can create own business services of the department at an application management center interface by logging in the management account. Each tenant, i.e. different enterprises or departments, can create business application services belonging to different roles under its own organizational framework. For example, in an online shopping application, a user may initiate a create order request by triggering an operation and send it to a server through a service gateway. When the server receives the order creation request sent by the user terminal through the service gateway, the server can acquire a currently available service list from the service registry according to the tenant identification in the order creation request, and call the corresponding service instance. The server can be pre-deployed with a service registry and a service configuration center, all services are registered in the service registry, and meanwhile, a currently available service list can be obtained from the service registry. For example, eureka (service discovery framework) Eureka is a service discovery framework developed by Netflix, which is a REST-based service that is primarily used to locate middle tier services that operate in the AWS domain for purposes of load balancing and middle tier service failover. The Spring Cloud integrates the Spring Cloud into its sub-projects Spring-closed-netflix to realize the service discovery function of Spring Cloud, and can provide service registration services. The service configuration center is used for uniformly managing all the services in the service system. The developer can dynamically update the configuration mechanism by modifying the configuration information in the service configuration center interface.
Step 204, determining downstream service instance information corresponding to the tenant identifier according to the tenant identifier.
After receiving the service request sent by the terminal through the gateway, the server can search the downstream service instance information corresponding to the tenant identifier from the service configuration center according to the tenant identifier carried in the service request. The service instance information refers to service instance information of different versions corresponding to the same service which is distributed in a gray scale in a service system, and the service version information can comprise a formal version and a gray scale version. In the distributed system, different service instances can be deployed in different server clusters, for example, when a Web service system is gradually increased from 10 ten thousand daily access to 1000 ten thousand daily access, service requests sent by terminals can be forwarded to corresponding downstream server addresses by deploying software with a load balancing function or a module and the like according to tenant identifications carried in the service requests. Load balancing is one of the important means for high availability of systems, mitigation of network pressure and expansion of processing capacity. Load balancing refers to client load balancing, e.g., a fabric, which is a component in a spring closed framework that implements client load balancing. Load balancing can be categorized into hardware load balancing and software load balancing. Hardware load balancing is mainly achieved through equipment specially used for load balancing among single nodes of clients, software load balancing is achieved through installing software used for load balancing functions or modules and the like on clients, for example, web servers, FTP servers, enterprise key application servers, other key task servers and the like, the number of running copies of new and old versions can be quickly adjusted through the client load balancing, and meanwhile traffic can be imported to new versions according to percentages. The application can specify the traffic of individual users to the new version by configuring a request Header (Header) in the HTTP request. For example, the client may call the service in an http request manner, after receiving a service request sent by the client, the web server obtains a server address corresponding to an available downstream service instance from the maintained available server list according to a preset configuration rule or algorithm (such as linear polling, weight load, traffic load, etc.), and forwards the service request sent by the client to the server address.
In step 206, if the downstream service instance information carries the tag service instance information of the tenant identifier, the service request is sent to the tag service instance in the tag service instance information.
After the server searches the downstream service instance information corresponding to the tenant identifier from the service configuration center according to the tenant identifier carried in the service request, if the server searches that the downstream service instance information carries the label service instance information of the tenant identifier, the server sends the service request to the label service instance in the label service instance information. The label service instance information refers to label information of a specific tenant identifier bound in the service instance information, in the gray scale service release system, the label service instance mainly refers to a released new version gray scale service instance, a developer can build a gray scale service instance cluster in a configuration interface in advance, and bind the specific tenant identifier information to gray scale service in the gray scale service cluster, so that a service request of a specific tenant is routed to a specific gray scale service instance.
And step 208, processing the service request by using the tag service instance, obtaining a result corresponding to the service request and returning the result to the terminal.
If the server finds that the downstream service instance information carries the label service instance information of the tenant identifier, after the server sends the service request to the label service instance in the label service instance information, the server can process the service request by using the label service instance, and a result corresponding to the service request is obtained and returned to the terminal. When the tag service instance processes the service request sent by the terminal, other services may be called at the same time. For example, after the user selects the merchandise in the shopping interface, the user makes a payment "Checkout" by clicking a button, and generates a corresponding Order ", which are all micro-services that have been built. The call between services can be completed by an RPC mode and an event notification mode. When the service sends the service request to the corresponding tag service instance, the tag service instance, namely the "Order" service processes the service request sent by the terminal, the "Order" service also needs to call other several services to assist in completing the whole function. After the "Checkout" service is completed, the "Order Placed" message is sent, after the "Payment" service receives the message, the user Payment is received, and the "Payment received" message is sent, namely, the "Order" service processes the terminal service request by calling other services, so as to complete the service request for collecting the Order, and the processing result corresponding to the service request is returned to the corresponding terminal.
In the traditional gray release service mode, when a spring group micro service framework is used, service requests adopt client load balancing, the service requests need to be completed by a ring component, the component only has built-in random, polling and other strategies, when different versions of gray service examples are deployed under the same service, the service requests sent by the client can be evenly distributed to all service examples by adopting the traditional spring group self-contained routing mode to process the service requests, tenants cannot be distinguished, when service gray release in a multi-tenant scene is involved in the system, no matter whether the gray release is carried out on upstream and downstream services, the whole call service link is required to be reset to release new examples, the routing of the requests of specific tenants to the designated service examples cannot be realized, and the dynamic adjustment of the control routing strategy according to different scenes cannot be realized.
In this embodiment, when service gray level publishing in a multi-tenant scenario is involved, and service instances of different versions need to be isolated and published for different tenants, a server receives a service request sent by a terminal through a gateway, where the service request includes a tenant identifier. And the server determines downstream service instance information corresponding to the tenant identification according to the tenant identification. If the server finds that the downstream service instance information carries the label service instance information of the tenant identification, the service request is sent to the label service instance in the label service instance information, the service request is processed by the label service instance, and a result corresponding to the service request is obtained and returned to the terminal. Therefore, when different tenants need to be isolated and service instances of different versions are released, only the configuration center of the server is required to change the routing configuration information, different tenants are bound to different service clusters, and a call link for dynamically adjusting service gray release based on different service scenes can be realized, so that service requests of specific tenants are routed to a designated service instance, a series of complicated operations such as restarting and loading service configuration are avoided, stability of a service system during updating and iteration can be guaranteed, and meanwhile, the efficiency of multi-tenant service gray release is effectively improved.
In one embodiment, as shown in fig. 3, before receiving a service request sent by a terminal through a gateway, the method further includes a step of establishing a gray scale service instance cluster, which specifically includes:
step 302, a gray scale service instance cluster is established in the configuration interface, and specific tenant identifications are bound or deleted in the gray scale service instance cluster to obtain updated configuration information.
Step 304, a resource acquisition request sent by the terminal through a polling mode is received.
And step 306, returning the updated configuration information to the terminal according to the resource acquisition request, wherein the updated configuration information is used for indicating the terminal to update the metadata in the memory, and calling the gray scale service instance in the updated configuration information.
Before the server receives a service request sent by the terminal through the gateway, if a developer needs to update a specific service corresponding to a tenant in the service system, when the gray service is released, the developer can update different version information corresponding to the specific service in a service configuration center interface deployed on the server. Specifically, a developer can establish a gray service instance cluster in a service configuration interface deployed on a server, bind or delete a specific tenant identifier in the gray service instance cluster, and obtain updated configuration information. Meanwhile, the server can receive a resource acquisition request sent by the terminal in a polling mode, and the terminal can send an http request in a short polling mode, namely, the terminal can send the http request at fixed time. The terminal may also send the request to the server by using a long polling method, until the terminal receives a message returned by the server or the request is overtime, and then the terminal continues to send the next request. For example, for a certain instant messaging application program, a developer updates a gray level version a1.2 corresponding to a service a in a service configuration center interface, updates a tenant identifier bound by the gray level version a1.2 of the service a in a gray level service instance cluster corresponding to the service a, deletes the gray level version a1.1 of the service a originally bound by the tenant identifier, and obtains updated configuration information. When the server receives a resource acquisition request sent by the terminal in a polling mode, the server can return updated configuration information to the corresponding terminal according to the resource acquisition request sent by the terminal, so that the terminal updates metadata in a memory, and invokes an updated gray scale service instance A1.2 bound with the tenant identity according to the updated configuration information, namely, the terminal changes an A1.1 version of an original service A from an A1.2 version of the service A according to routing information corresponding to the service invocation service of the tenant identity, namely, invokes an A1.2 version of the updated service A. Therefore, the service cluster binding tenant is established in the configuration interface, so that the service cluster binding tenant meets the requirements of different service scenes, can be mastered quickly by non-professional persons, and is more convenient and flexible. Meanwhile, the designated service request routing control is performed by taking the tenant and the service instance as the minimum unit, different service instances are divided into different clusters, different tenants are bound to different service clusters, the request of the designated tenant can be routed to the designated service instance, and the routing link is dynamically adjusted according to different service scenes by combining a front-end interface.
In one embodiment, after receiving the service request sent by the terminal through the gateway, the method further includes the step of if no downstream service instance information corresponding to the tenant identifier exists, specifically including:
and according to the tenant identification, if the downstream service instance information corresponding to the tenant identification does not exist, sending the service request to the corresponding non-gray service instance according to the original routing strategy.
After the server receives the service request sent by the terminal through the gateway, the server can search the downstream service instance information corresponding to the tenant identifier from the service configuration center according to the tenant identifier carried in the service request. The server performs traversal searching from the service configuration center, and if the server searches that the downstream service instance information corresponding to the tenant identification does not exist, the server sends the service request to the corresponding non-gray service instance according to the original routing strategy. In the service system, after updating the function of a certain application and releasing a corresponding gray service, a tester can set to start a new version application first, but not directly import all user traffic, but the tester performs online test on the new version, if the new version application is not problematic in operation, a developer can import a small amount of user traffic onto the new version, i.e. the developer can change the link information of a small amount of user calling service, the developer can continue to observe the operation state of the new version, collect various data in operation, and also can compare various data of the new version and the old version, and perform A/B test. After confirming that the new version works well, gradually introducing more traffic to the new version, and continuously adjusting the number of the running server copies of the new version and the old version during the process so that the new version can bear larger and larger traffic pressure until 100% of traffic is switched to the new version, and finally closing the rest old version service to finish gray level release. Specifically, after the gray service is released, after the developer confirms that the new version of gray service release works well, the developer can gradually import more traffic to the new version, and the developer can modify part of tenant terminals in the service configuration center interface to call the service of the new version, namely, the developer binds or deletes specific tenant identifications in gray service instance clusters corresponding to the service, so that part of bound tenants call the service of the new version, and the rest of tenants do not bind any gray service instance clusters, and then the rest of tenants still call normal version service instances corresponding to the service, namely, non-gray service instances according to the original routing strategy. Therefore, if a problem of a new version is found in the gray level release process (gray period), the routing rule is released through updating the metadata cache, and the performance is higher. Meanwhile, codes are directly spread at the server side, so that the problem of performance loss caused by simultaneous calling of a plurality of services can be reduced. Each service requests to acquire configuration information updated in real time in a polling mode, a route link can be dynamically adjusted without downloading the link service of the whole service, the negative influence of gray release can be controlled within the minimum range, the stability of the service system in updating iteration is ensured, and meanwhile, the gray release efficiency of the multi-tenant service is effectively improved.
In one embodiment, as shown in fig. 4, a multi-tenant service gray level publishing method is provided, and the method is applied to the server in fig. 1 for illustration, and includes the following steps:
step 402, receiving a service request sent by a terminal through a gateway, where the service request includes a tenant identifier.
Step 404, determining downstream service instance information corresponding to the tenant identifier according to the tenant identifier.
Step 406, if the downstream service instance information carries the tag service instance information of the tenant identifier, obtaining all tag service instance information lists carrying the tenant identifier.
Step 408, according to the preset weight proportion, calling the corresponding tag service instance from the tag service instance information list, and sending the service request to the tag service instance.
In step 410, if the downstream service instance information does not carry the label service instance information of the tenant identifier, the service request is sent to the corresponding non-gray downstream service instance according to the original routing policy.
And step 412, processing the service request by using the label service instance or the non-gray downstream service instance to obtain a result corresponding to the service request and returning the result to the terminal.
When a developer needs to update a service corresponding to a tenant mark SH01 in a service system and release a corresponding gray service, the developer can update different version information corresponding to the service in a service configuration center interface deployed on a server. For example, the service registration center Eureka provides a rest interface to modify metadata, adopts a method call local to a server to directly modify the metadata to reduce loss, and stores the modified configuration information in a database to realize data recovery of a service instance of a hung service instance. For example, redis (Remote Dictionary Server), i.e. remote dictionary service, is an open source API written in ANSIC language, supporting network, and can be based on a log-type, key-Value database that can be stored in memory or be persistent, and provides multiple languages. All modification operation corresponding instance metadata is stored in redis for persistence in all configuration change operations of the configuration center. When metadata is set, a large amount of metadata operations are generated through http request calling in the traditional method, http requests need to be initiated once for each modification operation, a large amount of resource loss is caused, so that updated data is directly embedded into a write-in registry, and the operations can be completed through calling a method in the PeerAware InstanceRegistribution class. For example, the server may monitor the service configuration center through the time mechanism of the spring Cloud framework, that is, monitor the EureKaInstanceRegisteredEvent, and when the service carrying the meta-information is found to be on-line again, the server resets the corresponding meta-information that is persistent to the service instance on-line. For example, after the meta information a4001 corresponding to the original service a is stored in the redis and is persistent, and the original service a cannot be used, and the user reconfigures the configuration data corresponding to the meta information a4001, when the server monitors that the service carrying the meta information a4001 in the service configuration center is on line again, the server resets the meta information a4001 persistent in the redis to the on-line service instance, thereby realizing the recovery of instance data of the suspended service instance.
Specifically, a developer can directly update new versions corresponding to the service a and the service B in a service configuration center interface, namely, gray versions are svc a1.1, svc a1.2 and svcb1.1, and meanwhile, configuration information corresponding to the service a is modified, tenant identifications bound by gray versions a1.1 and a1.2 of the service a are updated in a gray service instance cluster corresponding to the service a, and gray version a1.0 of the service a originally bound by the tenant identification SH01 is deleted, so that updated configuration information is obtained. When the server receives a service request sent by the terminal through the gateway, the server searches downstream service instance information corresponding to the tenant identifier SH01 from the service configuration center according to the tenant identifier SH01 carried in the service request. If the server finds that the downstream service instance information carries the label service instance information of the tenant identifier SH01, the server acquires all label service instance information lists carrying the tenant identifier SH 01. In addition, the developer can also modify the weight proportion data of different versions corresponding to the service A, namely, the developer can preset a corresponding routing rule or weight proportion in the service configuration center interface. For example, version 1.1 and version 1.2 of service a are preset to account for 90% and 10% of the total traffic, respectively. Meanwhile, the flow distribution work of different versions can be completed through software or modules with load balancing functions, such as proxy servers or Ribbon components. The server may select, according to the preset weight ratio, the corresponding tag service instance from the tag service instance information list as the version a1.2 of the service a, and send the service request to the tag service instance a1.2. The server processes the service request by using the tag service instance A1.2, obtains a result corresponding to the service request and returns the result to the terminal. If the server finds that the downstream service instance information does not carry the label service instance information of the tenant identification, the server sends the service request to the corresponding non-gray downstream service instance A1.0 according to the original routing strategy, namely, the server sends the service request to the corresponding normal version service instance A1.0 according to the preset default routing configuration information. And the server processes the service request by using the non-gray downstream service instance A1.0 to obtain a result corresponding to the service request and returns the result to the terminal. Therefore, by dividing clusters, other idle service instances can be called for service requests without specific use scenes, so that all service instances can receive traffic, and the situation of resource waste of deployment service instances is greatly reduced. Meanwhile, the method integrates the upgrade data packet (sdk) without adding any codes or configuration, realizes zero invasion, can update and issue the configuration of metadata at a server by the upgrade data packet, and performs self-defined service routing through client load balancing, thereby realizing the service request routing of a specific tenant to a designated service instance, avoiding a series of complicated operations such as restarting and loading the service configuration, ensuring the stability of the service system during updating and iteration, and effectively improving the efficiency of multi-tenant service gray scale release.
In one embodiment, before the server receives the service request sent by the terminal through the gateway, the method further includes: and configuring the attribute of the service request sent by the terminal in the basic data packet, so that the gateway extracts the corresponding tenant identification from the service request sent by the terminal, adds the tenant identification into the service call request, and forwards the service call request to the corresponding downstream service instance. In the rib client, a developer can customize different downstream service calling strategies according to different scenes, namely the developer can realize the method by only writing the customized strategies in a basic data packet and registering the customized JavaBean. The Java Bean refers to a public Java class, and is a reusable component written in Java language. The service gateway can extract the corresponding tenant identification information from the token carried in the service request in a manner of calling the RequestContextHolder method in the self-defined load balancing client, and when the service gateway needs to forward the service request to the request header (header) corresponding to the service A, the service gateway needs to configure the attribute of the service request sent by the terminal in the basic data packet in advance, namely, needs to configure the attribute of the JavaBean, so that after the service request sent by the terminal is received by the service gateway, the service gateway can extract the corresponding tenant identification information from the token carried by the service request and add the extracted tenant identification information to the request header of the backward transmission request, for example, when the service gateway needs to forward the service request to the grayscale service instance A1.2 corresponding to the service A, the service gateway needs to extract the tenant identification, and add the extracted tenant identification to the request header corresponding to the request header 1.2 by calling the RequestContentZadehead method. Therefore, by configuring related data in the basic data packet in advance, the needed components and client processing logic are packaged in the basic packet, the problem that the data of the client needs to be reconfigured in each process is avoided, only the version of the basic packet of the server needs to be updated, the gateway can add tenant identification information to the request header of a transparent request to a service instance, the tenant identification information of the request header (header) in the whole request link can be always reserved, the service request of a specific tenant is routed to a designated service instance, a series of complicated operations such as restarting and loading the service configuration are avoided, the stability of the service system in updating and iterating can be ensured, and meanwhile, the efficiency of multi-tenant service gray level release is effectively improved.
In one embodiment, the step of processing the service request by using the tag service instance includes:
in the asynchronous thread, when the tag service instance needs to call other service instances to process a service request, the tenant identification is preferentially obtained from the gateway thread, and when the tenant identification is used for calling among service instances, the service instance version matched with the tenant identification is selected from service instances of different versions corresponding to the same service. When the thread pool is used for isolation, the newly started asynchronous thread cannot acquire the information of the current thread, namely when calling is carried out between services, the calling is equivalent to re-launching a service request among the services due to the cross-process calling, and the newly launched request is not provided with a request head, so that the information in the original service request head which cannot be carried, namely the tenant id information in the original request head (header), is lost, and therefore the problem of losing tenant information is avoided by preferentially acquiring the tenant identification information from the gateway thread. For example, when the server receives a service request sent by the terminal through the gateway, the server searches downstream service instance information corresponding to the tenant identifier SH01 from the service configuration center according to the tenant identifier SH01 carried in the service request. If the server finds that the downstream service instance information carries the label service instance information of the tenant identifier SH01, the server may select, according to a preset weight ratio, the corresponding label service instance from the label service instance information list as the version a1.2 of the service a, and send the service request to the label service instance a1.2. When the server processes the service request by using the tag service instance a1.2, when the tag service instance a1.2 needs to call the service B to process the service request, the server can obtain the tenant identifier from the service gateway thread preferentially, that is, the server can obtain the information corresponding to the current thread from the thread variable of log4j, after the server obtains the tenant identifier from the gateway thread, the server calls the service instance version matched with the tenant identifier from the gray service instance cluster corresponding to the service B according to the tenant identifier, for example, when B1.2 in the gray service instance cluster corresponding to the service B has a binding relationship with the tenant identifier SH01, the server processes the service request by using the tag service instance a1.2, so that the tag service instance a1.2 calls the service request sent by the terminal in cooperation with the service instance B1.2 corresponding to the tenant identifier from the gray service instance cluster corresponding to obtain the service request after the service request is processed by the service instance cluster and the service instance B1.2 returns the service result corresponding to the terminal after the service request is processed. Therefore, even in the asynchronous thread, the call link for dynamically adjusting service gray release based on different service scenes can be realized by acquiring tenant identification information carried in the original service request in the log information from the gateway thread, so that the service request of a specific tenant is routed to a designated service instance.
It should be understood that, although the steps in the flowcharts of fig. 1-4 are shown in order as indicated by the arrows, these steps are not necessarily performed in order as indicated by the arrows. The steps are not strictly limited to the order of execution unless explicitly recited herein, and the steps may be executed in other orders. Moreover, at least some of the steps in FIGS. 1-4 may include multiple steps or stages that are not necessarily performed at the same time, but may be performed at different times, nor do the order in which the steps or stages are performed necessarily performed in sequence, but may be performed alternately or alternately with at least a portion of the steps or stages in other steps or other steps.
In one embodiment, as shown in fig. 5, there is provided a multi-tenant service gray-scale publishing device, including: a receiving module 502, a determining module 504, a transmitting module 506, and a processing module 508, wherein:
the receiving module 502 is configured to receive a service request sent by a terminal through a gateway, where the service request includes a tenant identifier.
A determining module 504, configured to determine, according to the tenant identifier, downstream service instance information corresponding to the tenant identifier.
The sending module 506 is configured to send the service request to the tag service instance in the tag service instance information if the downstream service instance information carries the tag service instance information identified by the tenant.
And the processing module 508 is used for processing the service request by using the tag service instance, obtaining a result corresponding to the service request and returning the result to the terminal.
In one embodiment, the apparatus further comprises: an updating module and a returning module.
The updating module is used for establishing a gray service instance cluster in the configuration interface, binding or deleting specific tenant identification in the gray service instance cluster, and obtaining updated configuration information. The receiving module is also used for receiving a resource acquisition request sent by the terminal in a polling mode. The return module is used for returning the updated configuration information to the terminal according to the resource acquisition request, the updated configuration information is used for indicating the terminal to update the metadata in the memory, and the gray scale service instance in the updated configuration information is called.
In one embodiment, the sending module is further configured to send the service request to the corresponding non-gray service instance according to the original routing policy if there is no downstream service instance information corresponding to the tenant identifier.
In one embodiment, the apparatus further comprises: the device comprises an acquisition module and a calling module.
The acquisition module is used for acquiring all the tag service instance information lists carrying tenant identifications. The calling module is used for calling the corresponding tag service instance from the tag service instance information list according to the preset weight proportion.
In one embodiment, the sending module is further configured to send the service request to the corresponding non-gray-scale downstream service instance according to the original routing policy if the downstream service instance information does not carry the label service instance information of the tenant identifier.
In one embodiment, the apparatus further comprises: and (5) configuring a module.
The configuration module is used for configuring the attribute of the service request sent by the terminal in the basic data packet, so that the gateway extracts the corresponding tenant identification from the service request sent by the terminal, adds the tenant identification into the service request and forwards the service request to the corresponding downstream service instance.
In one embodiment, the obtaining module is further configured to, in the asynchronous thread, when the tag service instance needs to call another service instance to process the service request, preferentially obtain the tenant identifier from the gateway thread, where the tenant identifier is used to call a service instance version matching the tenant identifier from service instances of different versions corresponding to the same service when the service instances are called.
The specific limitation of the multi-tenant service gray-scale publishing device can be referred to as the limitation of the multi-tenant service gray-scale publishing method, and is not described herein. The modules in the multi-tenant service gray-scale publishing device can be all or partially realized by software, hardware and a combination thereof. The above modules may be embedded in hardware or may be independent of a processor in the computer device, or may be stored in software in a memory in the computer device, so that the processor may call and execute operations corresponding to the above modules.
In one embodiment, a computer device is provided, which may be a server, the internal structure of which may be as shown in fig. 6. The computer device includes a processor, a memory, and a network interface connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The database of the computer device is used for storing configuration data of gray scale release of the multi-tenant service. The network interface of the computer device is used for communicating with an external terminal through a network connection. The computer program, when executed by a processor, implements a multi-tenant service gray level distribution method.
It will be appreciated by those skilled in the art that the structure shown in fig. 6 is merely a block diagram of some of the structures associated with the present application and is not limiting of the computer device to which the present application may be applied, and that a particular computer device may include more or fewer components than shown, or may combine certain components, or have a different arrangement of components.
In one embodiment, a computer device is provided that includes a memory, a processor, and a computer program stored on the memory and executable on the processor, the processor implementing the steps of the various method embodiments described above when the computer program is executed.
Those skilled in the art will appreciate that implementing all or part of the above described methods may be accomplished by way of a computer program stored on a non-transitory computer readable storage medium, which when executed, may comprise the steps of the embodiments of the methods described above. Any reference to memory, storage, database, or other medium used in embodiments provided herein may include at least one of non-volatile and volatile memory. The nonvolatile Memory may include Read-Only Memory (ROM), magnetic tape, floppy disk, flash Memory, optical Memory, or the like. Volatile memory can include random access memory (Random Access Memory, RAM) or external cache memory. By way of illustration, and not limitation, RAM can be in the form of a variety of forms, such as static random access memory (Static Random Access Memory, SRAM) or dynamic random access memory (Dynamic Random Access Memory, DRAM), and the like. The technical features of the above embodiments may be arbitrarily combined, and all possible combinations of the technical features in the above embodiments are not described for brevity of description, however, as long as there is no contradiction between the combinations of the technical features, they should be considered as the scope of the description.
The above examples merely represent a few embodiments of the present application, which are described in more detail and are not to be construed as limiting the scope of the invention. It should be noted that it would be apparent to those skilled in the art that various modifications and improvements could be made without departing from the spirit of the present application, which would be within the scope of the present application. Accordingly, the scope of protection of the present application is to be determined by the claims appended hereto.

Claims (10)

1. A multi-tenant service gray level distribution method, comprising:
configuring the attribute of a service request sent by a terminal in a basic data packet, so that a gateway extracts a corresponding tenant identifier from a token carried by the service request sent by the terminal, and adds the extracted tenant identifier into a request header of the service request which is transmitted backwards in a transparent manner;
receiving a service request sent by the terminal through the gateway, wherein a request header of the service request comprises the tenant identification;
searching downstream service instance information corresponding to the tenant identification from a service configuration center according to the tenant identification; if no downstream service instance information corresponding to the tenant identification exists, the service request is sent to a corresponding non-gray service instance according to an original routing strategy;
If the downstream service instance information carries the label service instance information of the tenant identification, the service request is sent to a label service instance in the label service instance information; the label service instance information is label information of a specific bound tenant identifier; the label service instance is a gray service instance;
processing the service request by using the label service instance or the non-gray downstream service instance to obtain a result corresponding to the service request and returning the result to the terminal; the tenant identification is preferentially obtained from a gateway thread in the process of processing the service request by the label service instance or the non-gray downstream service instance; and the tenant identification is used for selecting service instance versions matched with the tenant identification from service instances of different versions corresponding to the same service when the service instances are called.
2. The method of claim 1, wherein prior to receiving the service request sent by the terminal through the gateway, the method further comprises:
establishing a gray service instance cluster in a configuration interface, and binding or deleting a specific tenant identification in the gray service instance cluster to obtain updated configuration information;
Receiving a resource acquisition request sent by the terminal in a polling mode;
and returning the updated configuration information to the terminal according to the resource acquisition request, wherein the updated configuration information is used for indicating the terminal to update metadata in a memory, and calling a gray scale service instance in the updated configuration information.
3. The method of claim 1, wherein after the step of sending the service request to the tag service instance in the tag service instance information after the step of carrying the tag service instance information identified by the tenant in the downstream service instance information, the method further comprises:
acquiring all tag service instance information lists carrying the tenant identifications;
and calling the corresponding tag service instance from the tag service instance information list according to a preset weight proportion.
4. The method according to claim 1, wherein the method further comprises:
and if the downstream service instance information does not carry the label service instance information of the tenant identification, sending the service request to a corresponding non-gray downstream service instance according to the original routing strategy.
5. The method of claim 1, wherein said processing said service request with said tag service instance comprises:
in the asynchronous thread, when the tag service instance needs to call other service instances to process the service request, the tenant identification is preferentially obtained from the gateway thread.
6. A multi-tenant service gray-scale distribution device, said device comprising:
the configuration module is used for configuring the attribute of the service request sent by the terminal in the basic data packet so that the gateway extracts the corresponding tenant identification from the token carried by the service request sent by the terminal, and adds the extracted tenant identification into the request header of the service request which is transmitted backwards in a transparent way;
the receiving module is used for receiving a service request sent by the terminal through the gateway, and a request head of the service request comprises the tenant identification;
the determining module is used for searching downstream service instance information corresponding to the tenant identification from the service configuration center according to the tenant identification; the sending module is used for sending the service request to the corresponding non-gray service instance according to the original routing strategy if the downstream service instance information corresponding to the tenant identification does not exist in the searching; if the downstream service instance information carries the label service instance information of the tenant identification, the service request is sent to a label service instance in the label service instance information; the label service instance information is label information of a specific bound tenant identifier; the label service instance is a gray service instance;
The processing module is used for processing the service request by utilizing the label service instance or the non-gray downstream service instance to obtain a result corresponding to the service request and returning the result to the terminal; the tenant identification is preferentially obtained from a gateway thread in the process of processing the service request by the label service instance or the non-gray downstream service instance; and the tenant identification is used for selecting service instance versions matched with the tenant identification from service instances of different versions corresponding to the same service when the service instances are called.
7. The multi-tenant service gray scale distribution device of claim 6, wherein said device further comprises:
the updating module is used for establishing a gray service instance cluster in the configuration interface, binding or deleting a specific tenant identification in the gray service instance cluster, and obtaining updated configuration information;
the receiving module is also used for receiving a resource acquisition request sent by the terminal in a polling mode;
and the return module is used for returning the updated configuration information to the terminal according to the resource acquisition request, wherein the updated configuration information is used for indicating the terminal to update metadata in a memory and calling a gray scale service instance in the updated configuration information.
8. The multi-tenant service gray scale distribution device of claim 6, wherein said device further comprises:
the acquiring module is used for acquiring all tag service instance information lists carrying the tenant identification; and the calling module is used for calling the corresponding tag service instance from the tag service instance information list according to the preset weight proportion.
9. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that the processor implements the steps of the method of any one of claims 1 to 5 when the computer program is executed.
10. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the steps of the method of any of claims 1 to 5.
CN202010817357.4A 2020-08-14 2020-08-14 Multi-tenant service gray level publishing method, device, computer equipment and storage medium Active CN112118565B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010817357.4A CN112118565B (en) 2020-08-14 2020-08-14 Multi-tenant service gray level publishing method, device, computer equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010817357.4A CN112118565B (en) 2020-08-14 2020-08-14 Multi-tenant service gray level publishing method, device, computer equipment and storage medium

Publications (2)

Publication Number Publication Date
CN112118565A CN112118565A (en) 2020-12-22
CN112118565B true CN112118565B (en) 2023-07-25

Family

ID=73804160

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010817357.4A Active CN112118565B (en) 2020-08-14 2020-08-14 Multi-tenant service gray level publishing method, device, computer equipment and storage medium

Country Status (1)

Country Link
CN (1) CN112118565B (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114675896A (en) * 2020-12-24 2022-06-28 广东飞企互联科技股份有限公司 Parameter configuration method and system for micro-service development
CN112631804A (en) * 2020-12-25 2021-04-09 杭州涂鸦信息技术有限公司 Service call request processing method based on isolation environment and computer equipment
CN112866268B (en) * 2021-01-29 2023-04-07 中国工商银行股份有限公司 Message processing method and system
CN114978998B (en) * 2021-02-26 2023-12-12 中移(苏州)软件技术有限公司 Flow control method, device, terminal and storage medium
CN113055492A (en) * 2021-03-25 2021-06-29 深圳云之家网络有限公司 Control method and device for service gray scale link, computer equipment and storage medium
CN113259407B (en) * 2021-03-25 2023-02-03 上海卓悠网络科技有限公司 Data interaction method and device based on application market architecture
CN113271334B (en) * 2021-03-25 2023-07-21 西藏宁算科技集团有限公司 Service policy distribution method and device based on SaaS scene and electronic equipment
CN113127550A (en) * 2021-04-21 2021-07-16 北京字跳网络技术有限公司 Information processing method, information processing device, electronic equipment and storage medium
CN115248730A (en) * 2021-04-27 2022-10-28 华为云计算技术有限公司 Method and device for providing service
CN113422732A (en) * 2021-06-22 2021-09-21 康键信息技术(深圳)有限公司 Version updating method, device, equipment and storage medium based on total station gray scale
CN113329096B (en) * 2021-06-23 2023-04-07 未鲲(上海)科技服务有限公司 Message transmission method and device, electronic equipment and storage medium
CN113407967B (en) * 2021-06-25 2023-02-07 上海卓悠网络科技有限公司 Service security method and device based on application market architecture
CN113535744B (en) * 2021-07-09 2023-12-08 深圳市蘑菇财富技术有限公司 Tenant data modification method, system, equipment and storage medium
CN113791805B (en) * 2021-09-17 2022-08-12 马上消费金融股份有限公司 Micro-service gray level publishing method and device
CN114143324A (en) * 2021-10-27 2022-03-04 上海卓悠网络科技有限公司 Load balancing method and device based on application market architecture
CN113867992B (en) * 2021-12-03 2022-03-25 连连(杭州)信息技术有限公司 Call chain resource isolation method and device, storage medium and electronic equipment
CN116346923A (en) * 2021-12-22 2023-06-27 中兴通讯股份有限公司 Service processing method, system and computer readable storage medium
CN114422440B (en) * 2022-03-28 2022-07-12 北京沃丰时代数据科技有限公司 Gray scale distribution method and device, electronic equipment and storage medium
CN115002227B (en) * 2022-05-19 2024-03-22 青岛海尔科技有限公司 User access request response method, storage medium and electronic device
CN115269040B (en) * 2022-07-22 2023-04-14 广州市玄武无线科技股份有限公司 Tenant business application expanding method, device and system
CN115103028B (en) * 2022-07-22 2022-11-15 深圳竹云科技股份有限公司 SaaS application request processing method and device and computer equipment
CN115361436A (en) * 2022-08-18 2022-11-18 中国工商银行股份有限公司 Starting method and device of personalized service instance and electronic equipment
CN115474071A (en) * 2022-08-22 2022-12-13 北京达佳互联信息技术有限公司 Content display method, device, equipment and storage medium
CN116860381B (en) * 2023-09-04 2023-11-28 厦门民航凯亚有限公司 Method for releasing visual micro-service gray scale

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109412878A (en) * 2019-01-16 2019-03-01 紫光云数科技有限公司 Multi-tenant service access implementation method, device and electronic equipment
CN109510852A (en) * 2017-09-15 2019-03-22 阿里巴巴集团控股有限公司 The method and device of gray scale publication
CN111092816A (en) * 2019-11-26 2020-05-01 金蝶软件(中国)有限公司 Gateway dynamic routing method, gateway dynamic routing device, computer equipment and storage medium
CN111478961A (en) * 2020-04-03 2020-07-31 中国建设银行股份有限公司 Multi-tenant service calling method and device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10601804B2 (en) * 2017-12-11 2020-03-24 International Business Machines Corporation Provide access to data storage services in a network environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109510852A (en) * 2017-09-15 2019-03-22 阿里巴巴集团控股有限公司 The method and device of gray scale publication
CN109412878A (en) * 2019-01-16 2019-03-01 紫光云数科技有限公司 Multi-tenant service access implementation method, device and electronic equipment
CN111092816A (en) * 2019-11-26 2020-05-01 金蝶软件(中国)有限公司 Gateway dynamic routing method, gateway dynamic routing device, computer equipment and storage medium
CN111478961A (en) * 2020-04-03 2020-07-31 中国建设银行股份有限公司 Multi-tenant service calling method and device

Also Published As

Publication number Publication date
CN112118565A (en) 2020-12-22

Similar Documents

Publication Publication Date Title
CN112118565B (en) Multi-tenant service gray level publishing method, device, computer equipment and storage medium
CN109120678B (en) Method and apparatus for service hosting of distributed storage system
US10735345B2 (en) Orchestrating computing resources between different computing environments
US11032140B2 (en) Using a template to update a stack of resources
CN112000348A (en) Control method and device for service gray release and computer equipment
CN112035228B (en) Resource scheduling method and device
US8819672B2 (en) Multi-image migration system and method
US20210133002A1 (en) Using scripts to bootstrap applications with metadata from a template
US20100287219A1 (en) Method For a Cloud-Based Meta-File System to Virtually Unify Remote and Local Files Across a Range of Devices' Local File Systems
US20100131854A1 (en) Graphical user interface for managing services in a distributed computing system
KR20060051932A (en) Updating software while it is running
US11461119B2 (en) Virtual containers configured to support multiple machine learning models
US9378039B2 (en) Virtual machine storage replication schemes
US20150012732A1 (en) Method and device for recombining runtime instruction
US20220038367A1 (en) System and method of suppressing inbound payload to an integration flow of an orchestration based application integration
US11843674B2 (en) Virtual workspace experience visualization and optimization
US20200142805A1 (en) Testing and reproduction of concurrency issues
US20180218276A1 (en) Optimizing Application Performance Using Finite State Machine Model and Machine Learning
US11531526B1 (en) Creating portable serverless applications
CN112463290A (en) Method, system, apparatus and storage medium for dynamically adjusting the number of computing containers
US8600960B2 (en) Processing proposed changes to data
US11494184B1 (en) Creation of transportability container files for serverless applications
US11681585B2 (en) Data migration for a shared database
CN110502238A (en) A kind of method and device of front and back end joint debugging
US11314601B1 (en) Automated capture and recovery of applications in a function-as-a-service environment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant