WO2022170782A1 - 微服务配置的方法、装置、电子设备、系统以及存储介质 - Google Patents
微服务配置的方法、装置、电子设备、系统以及存储介质 Download PDFInfo
- Publication number
- WO2022170782A1 WO2022170782A1 PCT/CN2021/123921 CN2021123921W WO2022170782A1 WO 2022170782 A1 WO2022170782 A1 WO 2022170782A1 CN 2021123921 W CN2021123921 W CN 2021123921W WO 2022170782 A1 WO2022170782 A1 WO 2022170782A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- service
- service data
- cluster
- data
- configuration data
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
Definitions
- the present application relates to the field of computers, and more particularly, to a method, apparatus, electronic device, system and storage medium for microservice configuration.
- Service Mesh Service Mesh
- the microservice architecture divides the monolithic application into multiple microservice components according to the goal of clear responsibilities.
- problems such as untimely configuration or incorrect configuration of microservices. This affects the stability of the microservice architecture.
- the present disclosure provides a method, apparatus, electronic device, system, and storage medium for microservice configuration.
- a method for configuring microservices is provided, which is applied to a business cluster.
- the method may include the following steps:
- a method for configuring microservices is provided, applied to the main cluster, and the method may include the following steps:
- the service data corresponding to the service data acquisition request is sent to the corresponding business cluster.
- an apparatus for configuring microservices may include:
- a control plane component that receives configuration data from the main cluster
- the data plane component is used to send a service data acquisition request to the main cluster and receive service data from the main cluster when the service data in the main cluster changes;
- Data plane components are also used to perform service governance tasks based on configuration data and service data.
- an apparatus for configuring microservices may include:
- the configuration center component is used to send the changed configuration data to each business cluster when the configuration data is changed;
- the registration center component is configured to send the service data corresponding to the service data acquisition request to the corresponding business cluster in the case of receiving the service data acquisition request of at least one business cluster.
- a microservice system may include:
- each business cluster is used to execute the aforementioned method for microservice configuration applied to the business cluster;
- the main cluster for executing the aforementioned method applied to the microservice configuration of the main cluster.
- an electronic device comprising:
- the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method in any of the embodiments of the present disclosure.
- a non-transitory computer-readable storage medium storing computer instructions for causing a computer to perform the method in any of the embodiments of the present disclosure.
- a computer program product comprising a computer program that, when executed by a processor, implements the method in any of the embodiments of the present disclosure.
- the service cluster can acquire service data in an active acquisition manner. Its advantage is that it can reduce the load of the main cluster, especially in scenarios with a large number of business clusters, it can greatly improve the stability of the main cluster.
- FIG. 1 is a flowchart of a method for microservice configuration applied to a business cluster according to the present disclosure
- FIG. 2 is a flowchart of sending a service data acquisition request according to the present disclosure
- FIG. 3 is a flowchart of determining whether service data has changed according to the present disclosure
- FIG. 4 is a flow diagram of performing a service governance task according to the present disclosure
- FIG. 5 is a flowchart of a method for microservice configuration applied to a master cluster according to the present disclosure
- FIG. 8 is a schematic diagram of an apparatus for configuring microservices corresponding to a business cluster according to the present disclosure
- FIG. 9 is a schematic diagram of an apparatus for configuring microservices corresponding to a main cluster according to the present disclosure.
- FIG. 10 is a schematic diagram of a microservice system according to the present disclosure.
- FIG. 11 is a block diagram of an electronic device used to implement the method of microservice configuration of an embodiment of the present disclosure.
- the present disclosure provides a method for configuring microservices, which is applied to a business cluster.
- the method may include the following steps:
- S101 Receive configuration data from the main cluster; and, in the case that the service data in the main cluster is determined to be changed, send a service data acquisition request to the main cluster, and receive service data from the main cluster;
- S102 Execute a service governance task according to the configuration data and the service data.
- one main cluster and at least one business cluster may be included.
- the business cluster can acquire data from the main cluster through active acquisition and passive acquisition, and then use the acquired data to perform service governance tasks.
- a service cluster may at least include a control plane component and a data plane component with upstream and downstream communication logic.
- the control plane component is used to push service data and configuration data to the data plane component.
- the control surface components may include Pilot components.
- Data plane components can include sidecar components and microservice programs, and sidecar components can be deployed together with microservice programs. That is, a microservice program deploys a sidecar component correspondingly.
- the sidecar component is used to take over all traffic to and from the microservice program to perform service governance operations.
- service governance services can include service routing, service current limiting, service melting, fault injection, and traffic playback.
- Configuration data can be obtained using a persistent connection. That is, when the configuration data is changed, the business cluster will obtain the changed configuration data that is actively delivered by the main cluster.
- the business cluster can use active polling to determine whether there is a change in service data in the main cluster.
- Changes to service data may include modifications, deletions, and/or upgrades and updates of service data by users.
- the specific way of determining the change may include real-time detection of the user's change action, timed comparison and detection of service data, and acquisition of service data changes actively notified by the user, and the like.
- the business cluster can actively send a service data acquisition request to the main cluster.
- the master cluster receives the service data acquisition request, it can determine the service data corresponding to the service data acquisition request according to the content of the service data acquisition request. Send the service data corresponding to the service data acquisition request to the business cluster.
- the business cluster After receiving the service data sent by the main cluster, the business cluster can perform service governance tasks according to the configuration data and service data.
- the business cluster can obtain service data in a way of active acquisition. Its advantage is that it can reduce the load of the main cluster, especially in scenarios with a large number of business clusters, it can greatly improve the stability of the main cluster.
- the step S102 sends a service data acquisition request to the main cluster, which may specifically include the following steps:
- the required service data may be determined according to the configuration information prepared in advance by the user, or may be determined according to the instruction issued in advance by the user.
- the service data required by each microservice program can be determined according to the number of microservice programs and the corresponding functions of each microservice program.
- the service data required by each microservice program can be used as the service data required by the business cluster.
- each business cluster can separately determine the required service data.
- the business cluster can periodically send business data change inquiry information to the main cluster to determine whether the service data in the main cluster has changed. For example, when the service cluster receives a reply of "service data has been changed" or "business data of type XX has been changed" from the main cluster, it may be determined that the service data in the main cluster has changed. Alternatively, a request for obtaining the business data list may also be sent to the main cluster, and in the case that the contents of the business data lists received twice in succession are different, it may be determined that the service data in the main cluster has changed.
- the changed service data is compared with the required service data to obtain a comparison result.
- a service data acquisition request is sent to the main cluster.
- the above process of confirming whether the business data in the main cluster has changed can be performed by the sidecar component in the business cluster.
- the business cluster in region A includes three sidecar components, A1, A2, and A3.
- the first sidecar component A1 is deployed together with APP1, the second sidecar component A2 is deployed together with APP2, and the third sidecar component A3 is deployed together with APP3.
- the first sidecar component A1 can determine that the data of type A1 is the service data required by APP1, the second sidecar component A2 can determine that the data of type A2 is the service data required by APP2, and the third sidecar component A3 can determine that the data of type A3 is Service data required by APP3.
- only the second sidecar component A2 may send a service data acquisition request to the main cluster to request to acquire the A2-type service data.
- the first sidecar component A1 sends a service data acquisition request to the main cluster to request to acquire the A1 type of service data.
- the second sidecar component A2 sends a service data acquisition request to the main cluster to request to acquire A2-type service data.
- the third sidecar component A3 sends a service data acquisition request to the main cluster to request to acquire A3-type service data.
- the business cluster can request the service data for the required service data.
- the above solution can reduce the amount of data transmission. Especially for multi-cluster scenarios, it can improve the stability of the microservice system.
- the method of determining that the service data in the main cluster is changed involved in step S202 may further include the following steps:
- Each sidecar component in the business cluster can periodically send polling information to the main cluster to get the polling results fed back by the main cluster.
- the difference between the two polling results exceeds the corresponding threshold, it can be determined that the service data in the main cluster has changed.
- the corresponding threshold may be that the degree of difference exceeds 10%.
- the weights of different parameters in the service data can be set, and when a parameter with a high weight changes, it can be determined that the service data in the main cluster has changed.
- the change of service data can be determined flexibly and quickly.
- performing the service governance task according to the configuration data and service data involved in step S102 may include the following sub-steps:
- S401 Use service data to determine the service instance of each microservice program
- S402 Use configuration data to determine parameters in the service instance
- S403 Execute the service governance task for each microservice program according to the service instance of each microservice program and the parameters in the service instance.
- Service data can be used to represent service instances of microservice programs in a business cluster.
- a service instance can be a specific function performed by a microservice program.
- the service instances of the microservice program include commodity information query, shopping cart (goods to be paid), bill settlement, and logistics query.
- microservice programs can be included, and each microservice program can correspond to a service instance.
- the configuration data can correspond to the parameters in the service instance.
- the billing and settlement microservice program can call data from the shopping cart microservice program, but cannot call data from the logistics microservice program.
- the configuration data may be a communication connection attempt time threshold of the shopping cart microservice program and the bill settlement microservice program, and the like.
- the sidecar component deployed together with the logistics microservice program can control the logistics microservice program to call the information of the settled items in the bill settlement microservice program, so that the logistics of the settled items can be queried in the logistics microservice program state.
- the sidecar component can control the communication attempt to retry or stop the communication connection attempt when the communication connection attempt time between the shopping cart microservice program and the bill settlement microservice process exceeds the communication connection attempt time threshold.
- the sidecar component can implement service governance tasks for the microservice programs deployed with it based on service data and configuration data.
- business clusters in different regions can form multiple activities in different places. Even if a business cluster fails, the overall smooth operation of the microservice architecture can still be guaranteed.
- this application adopts the method of actively acquiring service data by business clusters, even for multi-cluster scenarios, it can meet the needs of large-scale service instances.
- the present disclosure relates to a method for configuring microservices, which is applied to the main cluster.
- the method may include the following steps:
- S502 In the case of receiving the service data acquisition request of at least one service cluster, send the service data corresponding to the service data acquisition request to the corresponding service cluster.
- the main function of the main cluster is to receive the user's business data and configuration data, and send them to each business cluster.
- the main cluster can use the configuration center component to determine whether the configuration data has changed by actively polling detection or passively receiving notifications.
- Changes can include edits, deletions, or updates.
- the configuration data may include custom resource type (CRD, Custom Resource Definition) data.
- the main cluster can use the registry component to receive requests from business clusters.
- the service data corresponding to the service data acquisition request can be determined by analyzing the service data acquisition request of the business cluster. And the service data corresponding to the service data acquisition request is generated to the corresponding business cluster.
- the main cluster will determine the corresponding service data according to the request only when it receives the request of the business cluster.
- the solution of the present application can avoid the redundancy of service data delivery to the greatest extent. Based on this, the load of the main cluster can be reduced, especially in scenarios with a large number of business clusters, the stability of the main cluster can be greatly improved.
- the service data corresponding to the service data acquisition request is sent to the corresponding business cluster, include:
- S601 Perform adaptation processing on the received service data acquisition request of at least one service cluster to obtain an adaptation processing result
- S602 Determine service data corresponding to the service data acquisition request according to the adaptation processing result
- S503 Send the service data corresponding to the service data acquisition request to the corresponding business cluster.
- the main cluster can use the registry component to receive business data edited by users.
- Commonly used registry components of microservices for obtaining service data include various, for example, ZK (ZooKeeper), Eureka, Consul, Nacos, etc.
- the present disclosure introduces a registry proxy unit (Registry Proxy) component.
- Registration center agent unit component data models of different registration center components may be stored in advance. Based on this, when the master cluster receives a service data acquisition request sent by any service cluster, it can adapt the service data acquisition request by using the registration center proxy unit component.
- the docking with different registry components can be realized, so that the service data corresponding to the service data acquisition request is determined in the corresponding registry component.
- the service data corresponding to the service data acquisition request may be sent to the corresponding business cluster.
- the difference between different registration centers can be overcome by using the registration center proxy unit.
- sending the changed configuration data to each service cluster may specifically include the following steps:
- S703 Use the received configuration data as the changed configuration data, and send the changed configuration data to each service cluster.
- Each time the configuration center component receives configuration data it can retrieve the stored configuration data, compare the received configuration data with the stored configuration data, and obtain a comparison result.
- the comparison result is that there is a difference between the two
- the stored configuration data can be updated to the received configuration data, and the received configuration data can be used as the changed configuration data and delivered to each business cluster.
- the degree of difference can also be used as the judging standard, and whether there is a difference in important data or high-weight data can be used as the judging standard.
- the present application provides an apparatus for configuring microservices, and the apparatus may specifically include:
- control plane component 801 for receiving configuration data from the master cluster
- the data plane component 802 is configured to send a service data acquisition request to the main cluster and receive service data from the main cluster when the service data in the main cluster is changed;
- Data plane components are also used to perform service governance tasks based on configuration data and service data.
- the data plane component 802 includes a sidecar component, which may further include:
- a service data determination unit for determining required service data
- a service data comparison unit configured to compare the changed service data with the required service data to obtain a comparison result when it is determined that the service data in the main cluster has changed
- the service data acquisition request sending unit is configured to send a service data acquisition request to the main cluster when the comparison result meets the predetermined condition.
- the service data comparison unit can be specifically used for:
- the data plane component 802 includes a sidecar component, which may further include:
- the service instance determination unit is used to determine the service instance of each microservice program by using the service data
- a parameter determination unit used to determine the parameters in the service instance by using the configuration data
- the service governance task execution unit is used to execute the service governance task for each microservice program according to the service instance of each microservice program and the parameters in the service instance.
- microservice configuration device which can specifically include:
- the configuration center component 901 is configured to send the changed configuration data to each business cluster when the configuration data is changed;
- the registration center component 902 is configured to send the service data corresponding to the service data acquisition request to the corresponding business cluster in the case of receiving the service data acquisition request of at least one business cluster.
- the registry component 902 may further include:
- a registration center proxy unit performing adaptation processing on the received service data acquisition request of at least one business cluster, and obtaining an adaptation processing result
- a service data determination unit configured to determine the service data corresponding to the service data acquisition request according to the adaptation processing result
- the service data sending unit is configured to send the service data corresponding to the service data acquisition request to the corresponding business cluster.
- the configuration center component 901 may further include:
- a configuration data comparison unit configured to compare the received configuration data with the stored configuration data to obtain a comparison result
- a configuration data update unit configured to update the stored configuration data to the received configuration data when the comparison result is that the received configuration data is different from the stored configuration data
- the configuration data sending unit is configured to use the received configuration data as the changed configuration data, and send the changed configuration data to each business cluster.
- microservice system which may include:
- each business cluster is used to execute the aforementioned method for microservice configuration applied to the business cluster;
- the main cluster for executing the aforementioned method applied to the microservice configuration of the main cluster.
- N is a positive integer.
- Each service cluster may further include one control plane component and at least one data plane component.
- the control plane component may be communicatively connected to the configuration center of the main cluster for acquiring configuration data sent by the main cluster, and sending the configuration data to the data plane component.
- the sending method can be based on a Webhook mechanism.
- Data plane components can include co-deployed microservices (APP in Figure 10) and sidecar components (Sidecar in Figure 10).
- APP co-deployed microservices
- Sidecar Sidecar in Figure 10
- the sidecar component is used to send a service data acquisition request to the main cluster when it is detected that the service data in the main cluster changes. And receive the service data sent by the main cluster. According to the received configuration data and service data, perform service governance tasks for the microservice program.
- the registry component in the main cluster is used to receive and store the service data configured by the client.
- the service data corresponding to the service data acquisition request is determined.
- the service data corresponding to the service data acquisition request is sent to the data plane component in the business cluster.
- the configuration data may include custom resource type (CRD, Custom Resource Definition) data.
- CCD Custom Resource Definition
- the present disclosure introduces a registry proxy unit (Registry Proxy).
- the data models of different registration centers are pre-stored in the registration center proxy unit. Based on this, when the master cluster receives the service data acquisition request sent by the data plane component of any service cluster, it can use the registration center proxy unit to adapt the service data acquisition request.
- the present disclosure also provides an electronic device, a readable storage medium, and a computer program product.
- FIG. 11 shows a schematic block diagram of an electronic device 1100 that may be used to implement embodiments of the present disclosure.
- Electronic devices are intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers.
- Electronic devices may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smart phones, wearable devices, and other similar computing devices.
- the components shown herein, their connections and relationships, and their functions are by way of example only, and are not intended to limit implementations of the disclosure described and/or claimed herein.
- the electronic device 1100 includes a computing unit 1110 that can be executed according to a computer program stored in a read only memory (ROM) 1120 or a computer program loaded from a storage unit 1180 into a random access memory (RAM) 1130 Various appropriate actions and handling.
- RAM 1130 various programs and data required for the operation of device 1100 may also be stored.
- the computing unit 1110, the ROM 1120, and the RAM 1130 are connected to each other through a bus 1140.
- An input output (I/O) interface 1150 is also connected to the bus 1140 .
- Various components in the electronic device 1100 are connected to the I/O interface 1150, including: an input unit 1160, such as a keyboard, a mouse, etc.; an output unit 1170, such as various types of displays, speakers, etc.; a storage unit 1180, such as a magnetic disk, an optical disk, etc. etc.; and a communication unit 1190, such as a network card, modem, wireless communication transceiver, and the like.
- the communication unit 1190 allows the electronic device 1100 to exchange information/data with other devices through a computer network such as the Internet and/or various telecommunication networks.
- Computing unit 1110 may be various general-purpose and/or special-purpose processing components having processing and computing capabilities. Some examples of computing units 1110 include, but are not limited to, central processing units (CPUs), graphics processing units (GPUs), various specialized artificial intelligence (AI) computing chips, various computing units that run machine learning model algorithms, digital signal processing processor (DSP), and any suitable processor, controller, microcontroller, etc.
- the computing unit 1110 performs the various methods and processes described above, such as the method of microservice configuration.
- the method of microservice configuration may be implemented as a computer software program tangibly embodied on a machine-readable medium, such as storage unit 1180 .
- part or all of the computer program may be loaded and/or installed on the electronic device 1100 via the ROM 1120 and/or the communication unit 1190.
- a computer program When a computer program is loaded into RAM 1130 and executed by computing unit 1110, one or more steps of the method of microservice configuration described above may be performed.
- the computing unit 1110 may be configured to perform the method of microservice configuration by any other suitable means (eg, by means of firmware).
- Various implementations of the systems and techniques described herein above may be implemented in digital electronic circuitry, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips system (SOC), load programmable logic device (CPLD), computer hardware, firmware, software, and/or combinations thereof.
- FPGAs field programmable gate arrays
- ASICs application specific integrated circuits
- ASSPs application specific standard products
- SOC systems on chips system
- CPLD load programmable logic device
- computer hardware firmware, software, and/or combinations thereof.
- These various embodiments may include being implemented in one or more computer programs executable and/or interpretable on a programmable system including at least one programmable processor that
- the processor which may be a special purpose or general-purpose programmable processor, may receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device an output device.
- Program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer or other programmable data processing apparatus, such that the program code, when executed by the processor or controller, performs the functions/functions specified in the flowcharts and/or block diagrams. Action is implemented.
- the program code may execute entirely on the machine, partly on the machine, partly on the machine and partly on a remote machine as a stand-alone software package or entirely on the remote machine or server.
- a machine-readable medium may be a tangible medium that may contain or store a program for use by or in connection with the instruction execution system, apparatus or device.
- the machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium.
- Machine-readable media may include, but are not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or devices, or any suitable combination of the foregoing.
- machine-readable storage media would include one or more wire-based electrical connections, portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), fiber optics, compact disk read only memory (CD-ROM), optical storage, magnetic storage, or any suitable combination of the foregoing.
- RAM random access memory
- ROM read only memory
- EPROM or flash memory erasable programmable read only memory
- CD-ROM compact disk read only memory
- magnetic storage or any suitable combination of the foregoing.
- the systems and techniques described herein may be implemented on a computer having a display device (eg, a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user ); and a keyboard and pointing device (eg, a mouse or trackball) through which a user can provide input to the computer.
- a display device eg, a CRT (cathode ray tube) or LCD (liquid crystal display) monitor
- a keyboard and pointing device eg, a mouse or trackball
- Other kinds of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (eg, visual feedback, auditory feedback, or tactile feedback); and can be in any form (including acoustic input, voice input, or tactile input to receive input from the user.
- the systems and techniques described herein may be implemented on a computing system that includes back-end components (eg, as a data server), or a computing system that includes middleware components (eg, an application server), or a computing system that includes front-end components (eg, a user computer having a graphical user interface or web browser through which a user may interact with implementations of the systems and techniques described herein), or including such backend components, middleware components, Or any combination of front-end components in a computing system.
- the components of the system may be interconnected by any form or medium of digital data communication (eg, a communication network). Examples of communication networks include: Local Area Networks (LANs), Wide Area Networks (WANs), and the Internet.
- a computer system can include clients and servers.
- Clients and servers are generally remote from each other and usually interact through a communication network.
- the relationship of client and server arises by computer programs running on the respective computers and having a client-server relationship to each other.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
Abstract
Description
Claims (20)
- 一种微服务配置的方法,应用于业务集群,包括:从主集群接收配置数据;并且,在确定所述主集群中的服务数据出现变更的情况下,向所述主集群发送服务数据获取请求,从所述主集群接收服务数据;以及根据所述配置数据和所述服务数据,执行服务治理任务。
- 根据权利要求1所述的方法,其中,所述在确定所述主集群中的服务数据出现变更的情况下,向所述主集群发送服务数据获取请求,包括:确定所需的服务数据;在确定所述主集群中的服务数据出现变更的情况下,将发生变更的服务数据与所述所需的服务数据进行比较,得到比较结果;以及在所述比较结果符合预定条件的情况下,向所述主集群发送服务数据获取请求。
- 根据权利要求2所述的方法,其中,所述确定所述主集群中的服务数据出现变更的方式,包括:定期轮询所述主集群中的服务数据;以及在先后两次轮询结果的差异超过对应阈值的情况下,确定所述主集群中的服务数据出现变更。
- 根据权利要求1所述的方法,其中,所述根据所述配置数据和所述服务数据,执行服务治理任务,包括:利用所述服务数据确定每个微服务程序的服务实例;利用所述配置数据确定所述服务实例中的参数;以及根据所述每个微服务程序的服务实例,以及所述服务实例中的参数,执行对所述每个微服务程序的服务治理任务。
- 根据权利要求1至4任一所述的方法,其中,所述业务集群为多个,分别设置于不同地域;每个地域的业务集群所执行的服务治理任务相同。
- 一种微服务配置的方法,应用于主集群,包括:在配置数据出现变更的情况下,向每个业务集群发送变更后的配置数据;以及在接收到至少一个所述业务集群的服务数据获取请求的情况下,将与所述服务数据获取请求对应的服务数据发送给对应的业务集群。
- 根据权利要求6所述的方法,其中,所述在接收到至少一个所述业务集群的服务数据获取请求的情况下,将与所述服务数据获取请求对应的服务数据发送给对应的业务集群,包括:对接收到的至少一个所述业务集群的服务数据获取请求进行适配处理,得到适配处理结果;根据所述适配处理结果,确定与所述服务数据获取请求对应的服务数 据;以及将与所述服务数据获取请求对应的服务数据发送给对应的业务集群。
- 根据权利要求6所述的方法,其中,所述在配置数据出现变更的情况下,向每个业务集群发送变更后的配置数据,包括:将接收到的配置数据与已存储的配置数据进行比较,得到比较结果;在比较结果为所述接收到的配置数据与所述已存储的配置数据存在差异的情况下,将所述已存储的配置数据更新为所述接收到的配置数据;以及将所述接收到的配置数据作为变更后的配置数据,向每个业务集群发送所述变更后的配置数据。
- 一种微服务配置的装置,包括:控制面组件,用于从主集群接收配置数据;数据面组件,用于在所述主集群中的服务数据出现变更的情况下,向所述主集群发送服务数据获取请求,从所述主集群接收服务数据;所述数据面组件还用于根据所述配置数据和所述服务数据,执行服务治理任务。
- 根据权利要求9所述的装置,其中,所述数据面组件包括边车组件,所述边车组件进一步包括:服务数据确定单元,用于确定所需的服务数据;服务数据比较单元,用于在确定所述主集群中的服务数据出现变更的情况下,将发生变更的服务数据与所述所需的服务数据进行比较,得到比较结果;以及服务数据获取请求发送单元,用于在所述比较结果符合预定条件的情况下,向所述主集群发送服务数据获取请求。
- 根据权利要求10所述的装置,其中,所述服务数据比较单元具体用于:定期轮询所述主集群中的服务数据;以及在先后两次轮询结果的差异超过对应阈值的情况下,确定所述主集群中的服务数据出现变更。
- 根据权利要求9所述的装置,其中,所述数据面组件包括边车组件,所述边车组件进一步包括:服务实例确定单元,用于利用所述服务数据确定每个微服务程序的服务实例;参数确定单元,用于利用所述配置数据确定所述服务实例中的参数;以及服务治理任务执行单元,用于根据所述每个微服务程序的服务实例,以及所述服务实例中的参数,执行对所述每个微服务程序的服务治理任务。
- 根据权利要求9所述的装置,其中,所述微服务配置的装置为业 务集群,以及所述业务集群为多个,分别设置于不同地域;每个地域的业务集群所执行的服务治理任务相同。
- 一种微服务配置的装置,包括:配置中心组件,用于在配置数据出现变更的情况下,向每个业务集群发送变更后的配置数据;以及注册中心组件,用于在接收到至少一个所述业务集群的服务数据获取请求的情况下,将与所述服务数据获取请求对应的服务数据发送给对应的业务集群。
- 根据权利要求14所述的装置,其中,所述注册中心组件包括:注册中心代理单元;对接收到的至少一个所述业务集群的服务数据获取请求进行适配处理,得到适配处理结果;服务数据确定单元,用于根据所述适配处理结果,确定与所述服务数据获取请求对应的服务数据;以及服务数据发送单元,用于将与所述服务数据获取请求对应的服务数据发送给对应的业务集群。
- 根据权利要求14所述的装置,其中,所述配置中心组件,包括:配置数据比较单元,用于将接收到的配置数据与已存储的配置数据进行比较,得到比较结果;配置数据更新单元,用于在比较结果为所述接收到的配置数据与所述已存储的配置数据存在差异的情况下,将所述已存储的配置数据更新为所述接收到的配置数据;以及配置数据发送单元,用于将所述接收到的配置数据作为变更后的配置数据,向每个业务集群发送所述变更后的配置数据。
- 一种微服务系统,包括:至少一个业务集群,每个所述业务集群用于执行权利要求1至5中任一项所述的方法;主集群,用于执行权利要求6至8中任一项所述的方法。
- 一种电子设备,其特征在于,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至8中任一项所述的方法。
- 一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使计算机执行权利要求1至8中任一项所述的方法。
- 一种计算机程序产品,包括计算机程序,该计算机程序在被处理器 执行时实现根据权利要求1至8中任一项所述的方法。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020227034296A KR102911860B1 (ko) | 2021-02-10 | 2021-10-14 | 마이크로서비스 구성 방법, 장치, 전자 기기, 시스템 및 저장 매체 |
| JP2022559897A JP7450750B2 (ja) | 2021-02-10 | 2021-10-14 | マイクロサービス構成用方法、装置、電子デバイス、システム及び記憶媒体 |
| EP21925429.9A EP4113290A4 (en) | 2021-02-10 | 2021-10-14 | MICRO SERVICE CONFIGURATION METHOD AND APPARATUS, ELECTRONIC DEVICE, SYSTEM AND STORAGE MEDIUM |
| US17/914,893 US12481511B2 (en) | 2021-02-10 | 2021-10-14 | Method and apparatus for microservice configuration, electronic device, system, and storage medium |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202110185215.5 | 2021-02-10 | ||
| CN202110185215.5A CN112860342B (zh) | 2021-02-10 | 2021-02-10 | 微服务配置的方法、装置、设备、系统以及存储介质 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2022170782A1 true WO2022170782A1 (zh) | 2022-08-18 |
Family
ID=75988018
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2021/123921 Ceased WO2022170782A1 (zh) | 2021-02-10 | 2021-10-14 | 微服务配置的方法、装置、电子设备、系统以及存储介质 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US12481511B2 (zh) |
| EP (1) | EP4113290A4 (zh) |
| JP (1) | JP7450750B2 (zh) |
| KR (1) | KR102911860B1 (zh) |
| CN (1) | CN112860342B (zh) |
| WO (1) | WO2022170782A1 (zh) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115129740A (zh) * | 2022-09-01 | 2022-09-30 | 山东大学 | 一种云原生环境下的分布式微服务数据库更新方法及系统 |
| CN115766481A (zh) * | 2022-12-05 | 2023-03-07 | 广州玖晔网络科技有限公司 | 一种微服务治理方法及系统 |
| CN116032739A (zh) * | 2022-11-29 | 2023-04-28 | 北银金融科技有限责任公司 | 一种基于银行核心的多功能分布式边车系统 |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112860342B (zh) * | 2021-02-10 | 2024-03-12 | 北京百度网讯科技有限公司 | 微服务配置的方法、装置、设备、系统以及存储介质 |
| WO2023044936A1 (zh) * | 2021-09-27 | 2023-03-30 | 西门子股份公司 | 知识分发系统、方法、装置和计算机可读介质 |
| CN113709707B (zh) * | 2021-10-29 | 2022-03-15 | 中兴通讯股份有限公司 | 服务网格中边车部署的方法、装置、电子设备和存储介质 |
| CN114240350B (zh) * | 2021-12-10 | 2025-06-10 | 中信银行股份有限公司 | 一种架构信息治理方法、装置、设备及可读存储介质 |
| CN114553959A (zh) * | 2022-02-21 | 2022-05-27 | 南京航空航天大学 | 基于态势感知的云原生服务网格配置按需下发方法及应用 |
| CN116781527A (zh) * | 2022-03-11 | 2023-09-19 | 华为云计算技术有限公司 | 一种多站点级联系统、调用方法及相关装置 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108134696A (zh) * | 2017-12-15 | 2018-06-08 | 云宏信息科技股份有限公司 | 一种微服务配置更新方法及装置 |
| CN108540529A (zh) * | 2018-03-07 | 2018-09-14 | 江苏电力信息技术有限公司 | 一种基于微服务架构下的不重启动态参数刷新方法 |
| CN110673881A (zh) * | 2019-09-06 | 2020-01-10 | 深圳平安通信科技有限公司 | 微服务集群的配置管理方法、装置和计算机设备 |
| US20200133689A1 (en) * | 2018-10-31 | 2020-04-30 | SnapRoute, Inc. | Disaggregated Cloud-Native Network Architecture |
| CN111930758A (zh) * | 2020-07-14 | 2020-11-13 | 广西东信互联科技有限公司 | 一种基于Paxos算法的微服务配置数据实时更新方法 |
| CN112860342A (zh) * | 2021-02-10 | 2021-05-28 | 北京百度网讯科技有限公司 | 微服务配置的方法、装置、设备、系统以及存储介质 |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7558857B2 (en) | 2005-06-30 | 2009-07-07 | Microsoft Corporation | Solution deployment in a server farm |
| KR100834629B1 (ko) * | 2005-11-14 | 2008-06-02 | 삼성전자주식회사 | 통신 시스템에서 인터넷 프로토콜 기반의 서비스를 제공하는 시스템 및 방법 |
| EP2223538B1 (en) * | 2007-12-17 | 2016-03-23 | Telefonaktiebolaget LM Ericsson (publ) | Method and arrangement for network qos |
| KR20140117192A (ko) * | 2013-03-26 | 2014-10-07 | 삼성전자주식회사 | 서버, 단말 장치, 서비스 중계 서버, 그 제어 방법 |
| KR20200025821A (ko) | 2018-08-31 | 2020-03-10 | 에스케이하이닉스 주식회사 | 컨트롤러 및 컨트롤러의 동작방법 |
| US11579941B2 (en) | 2019-05-05 | 2023-02-14 | Mastercard International Incorporated | Control cluster for multi-cluster container environments |
| CN110971449A (zh) * | 2019-10-25 | 2020-04-07 | 武汉烽火众智数字技术有限责任公司 | 一种基于微服务架构的服务管控系统 |
-
2021
- 2021-02-10 CN CN202110185215.5A patent/CN112860342B/zh active Active
- 2021-10-14 EP EP21925429.9A patent/EP4113290A4/en not_active Withdrawn
- 2021-10-14 JP JP2022559897A patent/JP7450750B2/ja active Active
- 2021-10-14 WO PCT/CN2021/123921 patent/WO2022170782A1/zh not_active Ceased
- 2021-10-14 KR KR1020227034296A patent/KR102911860B1/ko active Active
- 2021-10-14 US US17/914,893 patent/US12481511B2/en active Active
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108134696A (zh) * | 2017-12-15 | 2018-06-08 | 云宏信息科技股份有限公司 | 一种微服务配置更新方法及装置 |
| CN108540529A (zh) * | 2018-03-07 | 2018-09-14 | 江苏电力信息技术有限公司 | 一种基于微服务架构下的不重启动态参数刷新方法 |
| US20200133689A1 (en) * | 2018-10-31 | 2020-04-30 | SnapRoute, Inc. | Disaggregated Cloud-Native Network Architecture |
| CN110673881A (zh) * | 2019-09-06 | 2020-01-10 | 深圳平安通信科技有限公司 | 微服务集群的配置管理方法、装置和计算机设备 |
| CN111930758A (zh) * | 2020-07-14 | 2020-11-13 | 广西东信互联科技有限公司 | 一种基于Paxos算法的微服务配置数据实时更新方法 |
| CN112860342A (zh) * | 2021-02-10 | 2021-05-28 | 北京百度网讯科技有限公司 | 微服务配置的方法、装置、设备、系统以及存储介质 |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP4113290A4 * |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115129740A (zh) * | 2022-09-01 | 2022-09-30 | 山东大学 | 一种云原生环境下的分布式微服务数据库更新方法及系统 |
| CN115129740B (zh) * | 2022-09-01 | 2022-11-04 | 山东大学 | 一种云原生环境下的分布式微服务数据库更新方法及系统 |
| CN116032739A (zh) * | 2022-11-29 | 2023-04-28 | 北银金融科技有限责任公司 | 一种基于银行核心的多功能分布式边车系统 |
| CN115766481A (zh) * | 2022-12-05 | 2023-03-07 | 广州玖晔网络科技有限公司 | 一种微服务治理方法及系统 |
| CN115766481B (zh) * | 2022-12-05 | 2024-06-11 | 广州玖晔网络科技有限公司 | 一种微服务治理方法及系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| US12481511B2 (en) | 2025-11-25 |
| JP2023520057A (ja) | 2023-05-15 |
| CN112860342B (zh) | 2024-03-12 |
| KR20220140869A (ko) | 2022-10-18 |
| KR102911860B1 (ko) | 2026-01-12 |
| CN112860342A (zh) | 2021-05-28 |
| EP4113290A1 (en) | 2023-01-04 |
| US20240231840A1 (en) | 2024-07-11 |
| JP7450750B2 (ja) | 2024-03-15 |
| EP4113290A4 (en) | 2024-01-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2022170782A1 (zh) | 微服务配置的方法、装置、电子设备、系统以及存储介质 | |
| US9800515B2 (en) | Mechanism for controlling a process on a computing node based on the participation status of the computing node | |
| CN112491617B (zh) | 一种链路跟踪方法、装置、电子设备和介质 | |
| CN118467637B (zh) | 一种数据库同步系统、方法、装置、电子设备及介质 | |
| CN114637738A (zh) | 数据可见性判断方法、装置、数据库节点及介质 | |
| CN115344585B (zh) | 数据版本管理方法、装置以及存储介质和电子设备 | |
| KR102754370B1 (ko) | 변경 태스크를 실행하는 방법, 장치, 전자 기기, 프로그램 및 판독 가능 기록 매체 | |
| CN114567540B (zh) | 主备节点切换方法、装置、设备、介质及程序产品 | |
| CN112565356A (zh) | 数据存储方法、装置以及电子设备 | |
| CN114598743A (zh) | 一种服务发现方法、装置、电子设备及存储介质 | |
| CN114860782B (zh) | 数据查询方法、装置、设备及介质 | |
| CN114138397B (zh) | 页面显示方法、装置、电子设备及存储介质 | |
| US12438942B2 (en) | Access management for a multi-endpoint data store | |
| CN111581049A (zh) | 分布式系统运行状态监测方法、装置、设备及存储介质 | |
| CN114328557B (zh) | 数据处理方法、装置、电子设备和存储介质 | |
| US20220407771A1 (en) | Method and apparatus for updating instance configuration, device, storage medium, and program product | |
| CN115036044B (zh) | 一种消息处理方法、装置、电子设备及存储介质 | |
| CN113900785A (zh) | 一种分布式事务处理方法、装置及电子设备 | |
| CN114579494A (zh) | 一种接口调用方法、装置、设备及介质 | |
| CN112818060B (zh) | 数据同步方法、装置、电子设备以及可读存储介质 | |
| CN115658223B (zh) | 面向边缘计算的状态信息确定方法、装置及电子设备 | |
| CN113595870B (zh) | 推送消息的处理方法、装置、电子设备及存储介质 | |
| CN119892588A (zh) | 一种微服务管理方法、系统及装置 | |
| CN115080364A (zh) | 应用状态确定方法、装置、电子设备及存储介质 | |
| CN117827835A (zh) | 数据库管理方法、装置、设备和介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 17914893 Country of ref document: US |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21925429 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2022559897 Country of ref document: JP Kind code of ref document: A Ref document number: 20227034296 Country of ref document: KR Kind code of ref document: A |
|
| ENP | Entry into the national phase |
Ref document number: 2021925429 Country of ref document: EP Effective date: 20220929 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| WWG | Wipo information: grant in national office |
Ref document number: 17914893 Country of ref document: US |