WO2019144809A1 - 一种服务更新方法及装置、系统 - Google Patents
一种服务更新方法及装置、系统 Download PDFInfo
- Publication number
- WO2019144809A1 WO2019144809A1 PCT/CN2019/071136 CN2019071136W WO2019144809A1 WO 2019144809 A1 WO2019144809 A1 WO 2019144809A1 CN 2019071136 W CN2019071136 W CN 2019071136W WO 2019144809 A1 WO2019144809 A1 WO 2019144809A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- service
- sub
- update data
- update
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- 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/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
- H04L67/108—Resource delivery mechanisms characterised by resources being split in blocks or fragments
Definitions
- the present application relates to the field of service update technologies, and in particular, to a service update method, apparatus, and system.
- the related art provides a service update method, which is mainly: first, uploading service update data required for updating a service to a specified client, that is, a device for updating related software or configuration on each service node; Then, the designated client sequentially transmits the service update data to the plurality of service nodes to be serviced through the network, and the service node performs the local service update after receiving the service update data, and only the specified client participates in the service during the entire service update process. Update the distribution of data, each service node waits for the specified client to transmit the service update data to the local.
- the service update data cannot be released and suspended, which may result in inconsistent service or abnormal function of multiple service nodes on the line.
- the purpose of the embodiment of the present application is to provide a service update method, apparatus, and system, based on pre-dividing service update data for service update by a service node into multiple sub-update data, and multiple service nodes to be service-updated share the participation
- the proliferation of sub-update data, the data used by any service node for service update is obtained by collecting all sub-update data from other associated service nodes and then combining them, effectively utilizing the computing resources and network resources of multiple service nodes, and improving the data.
- Service update efficiency of multiple service nodes enables fast, efficient, and secure service update for each service node.
- the embodiment of the present application provides a service update method, including:
- the embodiment of the present application provides a service update apparatus, including:
- a sub-data obtaining module configured to acquire, in a plurality of service nodes to be serviced, a plurality of sub-update data from a plurality of service nodes other than the first service node, wherein the plurality of sub-update data is updated by the service in advance Obtained after segmentation;
- An update data generating module configured to merge the obtained plurality of sub-update data to obtain the service update data
- a service update module configured to perform service update on the first service node according to the service update data obtained by the combination.
- the embodiment of the present application provides a service update system, including: a plurality of service nodes to be serviced, a communication connection between two service nodes, and each service node is provided with the service update device.
- the embodiment of the present application provides a service update device, including:
- a memory arranged to store computer executable instructions that, when executed, cause the processor to:
- the embodiment of the present application provides a storage medium for storing computer executable instructions, and the executable instructions implement the following processes when executed:
- the method and device for updating a service in the embodiment of the present application in a plurality of service nodes to be service updated, acquiring a plurality of sub-update data from a plurality of service nodes other than the first service node; and acquiring the plurality of sub-updates
- the data is merged to obtain service update data; and the service update is performed on the first service node according to the service update data obtained by the merge.
- the service update data for the service update by the service node is divided into a plurality of sub-update data in advance, and the service nodes that are to be service-updated are shared to participate in the diffusion of each sub-update data, and the data of any service node for the service update is from
- the other associated service nodes collect all the sub-update data and then combine them, effectively utilize the computing resources and network resources of multiple service nodes, improve the service update efficiency of the multi-service nodes, and realize the services quickly, efficiently, and securely.
- the node performs a service update.
- FIG. 1 is a schematic diagram of an application scenario of a service update according to an embodiment of the present application
- FIG. 2 is a schematic diagram of a first process of a service update method according to an embodiment of the present application
- FIG. 3 is a schematic diagram of a second process of a service update method according to an embodiment of the present application.
- FIG. 4 is a schematic diagram of an implementation principle of sub-update data diffusion in a service update method according to an embodiment of the present application
- FIG. 4b is a second schematic diagram of an implementation principle of sub-update data diffusion in a service update method according to an embodiment of the present application
- 4c is a third schematic diagram of an implementation principle of sub-update data diffusion in a service update method according to an embodiment of the present application.
- FIG. 4 is a fourth schematic diagram of an implementation principle of sub-update data diffusion in a service update method according to an embodiment of the present disclosure
- FIG. 5 is a schematic diagram of a third process of a service update method according to an embodiment of the present application.
- FIG. 6 is a schematic structural diagram of a first module of a service updating apparatus according to an embodiment of the present disclosure
- FIG. 7 is a schematic diagram of a second module structure of a service update apparatus according to an embodiment of the present application.
- FIG. 8 is a schematic structural diagram of a service update system according to an embodiment of the present application.
- FIG. 9 is a schematic structural diagram of a service update device according to an embodiment of the present application.
- the embodiment of the present application provides a service update method, apparatus, and system, based on pre-dividing service update data for service update by a service node into multiple sub-update data, and multiple service nodes to be service-updated share the participation of each sub-update.
- the diffusion of data, the data used by any service node for service update is collected after collecting all the sub-update data from other associated service nodes, and effectively utilizes the computing resources and network resources of multiple service nodes, thereby improving the multi-service.
- the service update efficiency of the node enables fast, efficient, and secure service update for each service node.
- FIG. 1 is a schematic diagram of an application scenario of a service update according to an embodiment of the present disclosure. As shown in FIG. 1 , FIG. 1 relates to multiple service nodes to be serviced, and the service node is a custodian of an Internet service or a cloud computing service.
- It may be a physical machine, a virtual container, or a server software, etc., in the initial distribution phase of the sub-update data, that is, the process of distributing a plurality of sub-update data obtained by dividing the service update data to a plurality of service nodes for the first time, and each sub-update data is distributed to In at least one service node; followed by the diffusion phase of the sub-update data, as the sub-update data continues to spread, the number of service nodes in which each sub-update data is located is increasing, and the sub-update data stored in each service node is The number is also increasing.
- any service node After any service node collects all the sub-update data, it merges to obtain the complete service update data, and uses the service update data to complete the local service update.
- the related software or configuration on all service nodes to be service updated is updated first, and in the service update process, there is a cross-machine room, distributed decentralization, fault tolerance mechanism, and system.
- Independent and hardware-independent features make full use of network resources and computing resources between service nodes and computer rooms to ensure that sub-update data is spread quickly, efficiently, safely and reliably in multiple service nodes.
- each service node to be serviced is combined to obtain a complete service update data, thereby implementing service update of multiple service nodes.
- FIG. 2 is a schematic diagram of a first process of a service update method according to an embodiment of the present disclosure.
- the method in FIG. 2 can be performed by the service node 100 in FIG. 1 and is applicable to service update deployment of an Internet service and a cloud computing service, as shown in FIG.
- the method includes at least the following steps:
- S201 Acquire, in a plurality of service nodes to be service updated, a plurality of sub-update data from a plurality of service nodes other than the first service node, where the plurality of sub-update data are obtained by pre-segmentation of service update data,
- a service node is any one of a plurality of service nodes to be serviced. Since any service node not only participates in the diffusion of the sub-update data, but also needs to perform service update itself, the sub-update data is represented by a service node. In the process of spreading to other service nodes, the transmitted sub-update data is a data copy of the data sub-block obtained after the service update data is segmented.
- the plurality of sub-update data acquired by the first service node may be from a part of service nodes other than the first service node, or may be all service nodes except the first service node.
- S203 Perform service update on the first service node according to the service update data obtained by the combination. Specifically, after the complete service update data is obtained by combining the plurality of sub-update data, if the current service update is an upgrade of the original application service, The service update data is used to replace the original service data related to the service to be upgraded. If the service update is a new application service, the service update data is added to the original service data, and then the service node service is restarted.
- the service update data for implementing the "red envelope bonus” application service needs to be divided into a plurality of sub-update data, and steps S201 to S203 are used to make each offer
- the service node of the application service obtains all the sub-update data and merges it into the service update data, and each service node uses the service update data to update the local application service, thereby providing the corresponding application service to the client.
- the service nodes that are to be service-updated share the proliferation of the sub-update data, and any service node is used for
- the service update data is obtained by collecting all the sub-update data from other associated service nodes and then combining them, effectively utilizing the computing resources and network resources of multiple service nodes, improving the service update efficiency of the multi-service nodes, and achieving fast and efficient operation. Service update for each service node securely.
- the S201 before acquiring a plurality of sub-update data from a plurality of service nodes other than the first service node, the S201 includes:
- each sub-update data corresponds to one data identifier.
- the data sequence number may be used as The data identifier of the sub-update data is exemplified by the service update data being divided into m sub-update data, the data identifier of the first sub-update data is 1, and the data identifier of the last self-update data is m.
- the foregoing S201 obtains, in the plurality of service nodes to be serviced, the plurality of sub-update data from the plurality of service nodes other than the first service node, specifically:
- S2011 In the plurality of service nodes to be service updated, according to the received service update request, the sub-update data corresponding to each data identifier is respectively acquired from a plurality of service nodes other than the first service node.
- the service update data is uploaded to any service node (for example, the service node k), and after receiving the service update data, the service node receives the service update data.
- Divide the service update data into multiple sub-update data for example, split into m sub-update data; in the plurality of service nodes to be service updated, as shown in FIG.
- the target number of service nodes as the first service node (eg, The number of the first serving service nodes is x, x ⁇ N), and the plurality of sub-update data is distributed to the plurality of first serving service nodes (for example, the m sub-update data is distributed to the x first serving service nodes), and at this time, for each starting a service node, the first serving service node receives at least one sub-update data, and for each sub-update data, the sub-update data exists on at least one first-serving service node, where the process is the initial distribution phase of the sub-update data, wherein, if the first service The node belongs to the first serving service node, and receives the service update request of the service node k; if the first service node does not belong to the first serving service node, the receiving service Point k or any service update service node requests a starter.
- the target number of service nodes eg, The number of the first serving service nodes is x,
- each sub-update data is spread among the plurality of service nodes, and finally, each service node acquires all sub-update data, as shown in FIG. 4d,
- the obtained plurality of sub-update data are merged to obtain service update data for service update.
- the foregoing S204 receives the service update request, which specifically includes:
- the update data split information includes: a data identifier of all sub-update data obtained by splitting the service update data, and each sub-update data is distributed to at least one Service node.
- the service update request received by the first service node may simultaneously carry at least one sub-update data and update data split information, and the first service node receives at least the initial distribution.
- the first service node participates in the diffusion phase of the subsequent sub-update data, transmit the locally stored sub-update data to the service node that needs the sub-update data, and obtain sub-update data that does not exist locally from other service nodes.
- the first serving node directly enters the diffusion phase of the sub-update data, and the service update request received by the first serving node may only carry the updated data splitting information, and according to the updated data segmentation.
- the information obtains the sub-update data that does not exist locally from other service nodes, and after obtaining the sub-update data, if the sub-update data acquisition request is received, the locally stored sub-update data is transmitted to the service node that needs the sub-update data. .
- each sub-update data obtained by the service update data segmentation is distributed to at least two service nodes, that is, the same sub-update data is distributed to the two first-time service nodes.
- the same sub-update data is distributed to the at least two first-serving service nodes.
- Each of the service nodes is stored in at least two service nodes, so that even if a certain service node is abnormal, the sub-update data can be obtained from another service node, thereby ensuring that each sub-update data can be normally spread.
- the service update data release success rate is improved.
- the foregoing S2011 acquires, according to the received service update request, a sub-received one corresponding to each data identifier from a plurality of service nodes other than the first service node, among the plurality of service nodes to be service-updated.
- Update the data including:
- S20111 Acquire sub-update data storage information of multiple service nodes other than the first service node, where the sub-update data storage information includes: a data identifier of the sub-update data stored on the service node.
- S20112 for each data identifier in the service update request, determining whether the first service node has sub-update data corresponding to the data identifier; specifically, querying, according to a preset order, whether the sub-update data corresponding to each data identifier exists locally If it does not exist, it is obtained from the service node that has stored the child update data.
- the first service node After the first service node obtains the sub-update data storage information of each service node except itself, it can determine which service nodes the sub-update data is distributed in, and then obtain the local non-existence from the target service node in a targeted manner. The child updates the data until the sub-update data corresponding to all the data identifiers is stored locally. Specifically, the first service node can obtain the sub-update data corresponding to the different data identifiers from the at least two different service nodes at the same time, and All service nodes can obtain the required sub-update data at the same time, and distribute the data processing load and data transmission load to all service nodes, which greatly saves the service update data acquisition time and improves the service update efficiency and success rate of the multi-service node. .
- the foregoing S20113 selects a service node as the target service node according to the target data identifier corresponding to the sub-update data storage information and the sub-update data that does not exist locally, and specifically includes:
- the sub-update data distribution information includes: information of the service node where the sub-update data corresponding to each data identifier in the service update request is located.
- a service node is selected as the target service node according to the target update data corresponding to the sub-update data distribution information and the sub-update data that does not exist locally.
- the plurality of sub-update data storage information are first aggregated to obtain the sub-update data distribution information, and the sub-update data distribution information is included in the sub-update data distribution information.
- the sub-update data distribution information is included in the sub-update data distribution information.
- one of the service node A, the service node B, and the service node C may be selected as the target service node. In this way, it is clear that the sub-update data corresponding to the target data identifier is distributed among the service nodes, and the target service node is quickly located.
- the load rate of a service node is high, and the load rate of other service nodes is low, and the load balancing effect of multiple service nodes is achieved.
- the plurality of service nodes that have stored the sub-update data corresponding to the target data identifier are used as the candidate service node, wherein the target data identifier is a data identifier corresponding to the sub-update data that does not exist locally.
- the candidate service node with the lowest load rate is determined as the target service node according to the load rate of each candidate service node.
- the utility model can more fully utilize the computing resources and network resources of each service node, achieve the effect of load balancing of multiple service nodes, and further improve the service update efficiency of the multi-service node.
- the method further includes:
- the next target service node is reselected according to the load rate from low to high, and the sub-update data corresponding to the target data identifier is obtained from the reselected target service node.
- the target service node in the case that only one service node stores the sub-update data corresponding to the target data identifier, it is necessary to wait for the target service node to recover and continue to obtain the required sub-update data from the target service node.
- the same sub-update data in the initial distribution phase of the sub-update data, is distributed to the at least two first-serving service nodes, so that at least two service nodes can be stored with the sub-update corresponding to the target data identifier.
- the same sub-update data is only distributed to one first-serving service node, and as the sub-update data is continuously spread, it can be ensured that at least two service nodes store the target data identifier correspondingly.
- the sub-update data provides a redundancy mechanism for data acquisition failure and improves the success rate of service update data release.
- the change service node re-acquires the sub-update data, specifically, if the sub-update data acquisition fails, the target service node is abnormal. At this time, the first service node reselects the next target service node.
- the target service node continues to execute: respectively acquiring sub-update data storage information of the plurality of service nodes except the service node; and determining, for each data identifier in the service update request, determining the local Whether there is sub-update data corresponding to the data identifier; if not, selecting a service node as the target service node according to the latest version of each sub-update data storage information and the data identifier, and obtaining the data identifier from the target service node The corresponding sub-update data until all sub-update data is obtained.
- the process for obtaining the sub-update data storage information can be obtained by the following two methods:
- the first mode when the sub-update data of each service node is updated, the information of the updated sub-update data is automatically broadcasted to other service nodes. Specifically, the foregoing S20111 respectively acquires multiple service nodes other than the first service node.
- Sub-update data storage information including:
- sub-update data storage information broadcast by a plurality of service nodes other than the first service node, wherein the sub-update data storage information is that a plurality of service nodes other than the first service node acquire new sub-update data and update the local The sub-update data is obtained after the information is stored.
- each service node after receiving the sub-data storage information acquisition request of the other service node, each service node sends the latest version of the sub-update data storage information to the corresponding service node. Specifically, the foregoing S20111 obtains the first service node respectively.
- Sub-update data storage information of multiple service nodes other than the following:
- the foregoing S202 combines the acquired plurality of sub-update data to obtain the service update data for the service update, which specifically includes:
- each sub-update data is combined to obtain service update data for service update.
- the service node not only acquires sub-update data to other service nodes, but also needs to send sub-update data to the corresponding service node based on the sub-update data acquisition request of other service nodes, based on
- the method also includes:
- the service node For each service node, the service node not only obtains the sub-update data storage information from the other service nodes, but also needs to send the latest version of the sub-update data storage information to the other service nodes.
- the local latest version of the sub-update data storage information is transmitted to the corresponding service node such that the service node receiving the sub-update data storage information determines the target service node and acquires the sub-update data from the target service node.
- the process of updating the data storage information for the sender may be implemented in the following two manners, specifically:
- the first mode when the sub-update data of the first service node is updated, the updated sub-update data storage information is actively broadcast to other service nodes. Specifically, the local latest version of the sub-update data storage information is sent to the corresponding Service nodes, including:
- the updated sub-update data storage information is broadcast to a plurality of service nodes other than the first service node.
- the second mode after receiving the sub-data storage information acquisition request of the other service node, the first service node sends the latest version of the sub-update data storage information to the service node, specifically, the local update version of the latest version of the sub-update data.
- the storage information is sent to the corresponding service node, including:
- the local latest version of the sub-update data storage information is transmitted to the service node that transmits the sub-data storage information acquisition request.
- the service update method in the embodiment of the present application in the plurality of service nodes to be service updated, acquiring a plurality of sub-update data from a plurality of service nodes other than the first service node; and merging the acquired plurality of sub-update data, Obtaining service update data; performing service update on the first service node according to the service update data obtained by the merge.
- the service update data for the service update by the service node is divided into a plurality of sub-update data in advance, and the service nodes that are to be service-updated are shared to participate in the diffusion of each sub-update data, and the data of any service node for the service update is from
- the other associated service nodes collect all the sub-update data and then combine them, effectively utilize the computing resources and network resources of multiple service nodes, improve the service update efficiency of the multi-service nodes, and realize the services quickly, efficiently, and securely.
- the node performs a service update.
- FIG. 6 is a first module component of the service update device provided by the embodiment of the present application.
- the apparatus is used to perform the service update method described in FIG. 2 to FIG. 5. As shown in FIG. 6, the apparatus includes:
- the sub-data obtaining module 601 is configured to acquire, in the plurality of service nodes to be serviced, a plurality of sub-update data from a plurality of service nodes except the first service node, where the plurality of sub-update data is pre-updated by the service Obtained after data segmentation;
- the service update module 603 is configured to perform service update on the first service node according to the service update data obtained by the combination.
- the foregoing apparatus further includes:
- An update request receiving module 604 configured to receive a service update request before acquiring a plurality of sub-update data from a plurality of service nodes other than the first service node, wherein the service update request carries all the pieces obtained by the service update data segmentation The data identifier of the sub-update data;
- the sub-data obtaining module 601 is specifically configured to:
- the sub-update data corresponding to each of the data identifiers is respectively acquired from a plurality of service nodes other than the first service node.
- the update request receiving module 604 is specifically configured to:
- the update data split information includes: a data identifier of all sub-update data obtained by splitting the service update data, and each sub-update data is distributed to at least A service node.
- each sub-update data obtained by service update data segmentation is distributed to at least two service nodes.
- the sub-data obtaining module 601 is further specifically configured to:
- sub-update data storage information of the plurality of service nodes except the first service node, where the sub-update data storage information includes: a data identifier of the sub-update data stored on the service node;
- the sub-data obtaining module 601 is further used to:
- the sub-update data distribution information includes: information of a service node where the sub-update data corresponding to each data identifier in the service update request is located;
- the sub-data obtaining module 601 is further specifically configured to:
- a plurality of service nodes that have stored the sub-update data corresponding to the data identifier are used as an alternate service node;
- the candidate service node with the lowest load rate is determined as the target service node according to the load rate of each of the candidate service nodes.
- the foregoing sub-data obtaining module 601 is further configured to:
- the target service node After obtaining the sub-update data corresponding to the data identifier from the target service node, if the sub-update data acquisition fails, the next target service node is re-selected according to the load rate from low to high, and the re-selected from the re-selected The sub-update data corresponding to the data identifier is obtained in the target service node.
- the sub-data obtaining module 601 is further used to:
- sub-update data storage information broadcast by a plurality of service nodes other than the first service node, wherein the sub-update data storage information is that a plurality of service nodes other than the first service node acquire new sub-update data and update the local The child is updated after the data is stored in the information.
- the sub-data obtaining module 601 is further used to:
- the update data generating module 602 is specifically configured to:
- each of the sub-update data is combined to obtain the service update data.
- the foregoing apparatus further includes:
- the sub-update data sending module 605 is configured to receive a sub-update data acquisition request sent by each service node other than the first service node, and send the sub-update data corresponding to the acquisition request to the corresponding service node.
- the foregoing apparatus further includes:
- the storage information sending module 606 is configured to send the local latest version of the sub-update data storage information to the corresponding service node.
- the service update apparatus in the embodiment of the present application acquires a plurality of sub-update data from a plurality of service nodes other than the first service node among the plurality of service nodes to be serviced, and merges the acquired plurality of sub-update data. Obtaining service update data; performing service update on the first service node according to the service update data obtained by the merge.
- the service update data for the service update by the service node is divided into a plurality of sub-update data in advance, and the service nodes that are to be service-updated are shared to participate in the diffusion of each sub-update data, and the data of any service node for the service update is from
- the other associated service nodes collect all the sub-update data and then combine them, effectively utilize the computing resources and network resources of multiple service nodes, improve the service update efficiency of the multi-service nodes, and realize the services quickly, efficiently, and securely.
- the node performs a service update.
- the service updating apparatus provided by the embodiment of the present invention can implement various processes in the embodiment corresponding to the foregoing service update method. To avoid repetition, details are not described herein again.
- the embodiment of the present application further provides a service update system.
- the system includes: multiple to be service updated.
- the service node 100, the communication connection between the two service nodes 100, each service node 100 is provided with the above service update device; wherein the plurality of sub-update data (ie, data sub-blocks 1 to m) obtained by the service update data segmentation are in service
- the nodes 100 are spread out so that each service node 100 acquires all sub-update data.
- the first service node to be serviced is used to obtain multiple sub-update data from multiple service nodes other than the first service node among the multiple service nodes to be service-updated, where the multiple The sub-update data is obtained by pre-segmentation of the service update data; combining the acquired plurality of sub-update data to obtain the service update data; and the first service according to the merged service update data
- the node performs a service update.
- first service node is further configured to:
- any one of the plurality of service nodes (ie, the service node k) is used to:
- each sub-update data is distributed to at least two selected initial allocation nodes.
- the service update system in the embodiment of the present application acquires, for any service node, a plurality of sub-update data from a plurality of service nodes other than the service node among the plurality of service nodes to be service-updated;
- the data is updated and merged to obtain service update data; and the service update is performed on the first service node according to the service update data obtained by the merge.
- the service update data for the service update by the service node is divided into a plurality of sub-update data in advance, and the service nodes that are to be service-updated are shared to participate in the diffusion of each sub-update data, and the data of any service node for the service update is from
- the other associated service nodes collect all the sub-update data and then combine them, effectively utilize the computing resources and network resources of multiple service nodes, improve the service update efficiency of the multi-service nodes, and realize the services quickly, efficiently, and securely.
- the node performs a service update.
- the service update system provided by the embodiment of the present invention can implement various processes in the embodiment corresponding to the foregoing service update method. To avoid repetition, details are not described herein again.
- the embodiment of the present application further provides a service update device, which is used to execute the foregoing service update method, as shown in FIG. .
- the service update device may vary considerably depending on configuration or performance, and may include one or more processors 901 and memory 902 in which one or more storage applications or data may be stored.
- the memory 902 can be short-term storage or persistent storage.
- An application stored in memory 902 may include one or more modules (not shown), each of which may include a series of computer executable instructions in a service update device.
- the processor 901 can be arranged to communicate with the memory 902 to execute a series of computer executable instructions in the memory 902 on the service update device.
- the service update device may also include one or more power sources 903, one or more wired or wireless network interfaces 904, one or more input and output interfaces 905, one or more keyboards 906, and the like.
- the service update device includes a memory, and one or more programs, wherein one or more programs are stored in the memory, and one or more programs can include one or more modules, and each The modules can include a series of computer executable instructions in a service update device, and are configured to be executed by one or more processors.
- the one or more programs are included for performing the following computer executable instructions:
- the method further includes: executing the following computer executable instructions: before acquiring the plurality of sub-update data from the plurality of service nodes other than the first service node, the method further includes:
- the obtaining the plurality of sub-update data from the plurality of service nodes other than the first service node includes:
- the sub-update data corresponding to each of the data identifiers is respectively acquired from a plurality of service nodes other than the first service node.
- the receiving the service update request includes:
- the update data split information includes: a data identifier of all sub-update data obtained by splitting the service update data, and each sub-update data is distributed to at least A service node.
- each of the sub-update data obtained by the service update data segmentation is distributed to at least two service nodes when the computer executable instructions are executed.
- sub-update data storage information of the plurality of service nodes except the first service node, where the sub-update data storage information includes: a data identifier of the sub-update data stored on the service node;
- the selecting, according to each of the sub-update data storage information and the data identifier, a service node as the target service node includes:
- the sub-update data distribution information includes: information of a service node where the sub-update data corresponding to each data identifier in the service update request is located;
- the selecting, according to the sub-update data distribution information and the data identifier, a service node as the target service node includes:
- a plurality of service nodes that have stored the sub-update data corresponding to the data identifier are used as an alternate service node;
- the candidate service node with the lowest load rate is determined as the target service node according to the load rate of each of the candidate service nodes.
- the method further includes:
- the next target service node is reselected according to the load rate from low to high, and the sub-update data corresponding to the data identifier is obtained from the reselected target service node.
- the acquiring the sub-update data storage information of the multiple service nodes other than the first service node respectively includes:
- sub-update data storage information broadcast by a plurality of service nodes other than the first service node, wherein the sub-update data storage information is that a plurality of service nodes other than the first service node acquire new sub-update data and update the local The child is updated after the data is stored in the information.
- the acquiring the sub-update data storage information of the plurality of service nodes other than the first service node respectively includes:
- the merging the obtained plurality of sub-update data to obtain the service update data includes:
- each of the sub-update data is combined to obtain the service update data.
- the computer executable instructions when executed, further comprise instructions for: executing the following computer executable instructions:
- the sub-update data corresponding to the acquisition request is transmitted to the corresponding service node.
- the computer executable instructions when executed, further comprise instructions for: executing the following computer executable instructions:
- the local latest version of the sub-update data storage information is sent to the corresponding service node.
- the service update device in the embodiment of the present application acquires a plurality of sub-update data from a plurality of service nodes other than the first service node among the plurality of service nodes to be serviced, and merges the acquired plurality of sub-update data. Obtaining service update data; performing service update on the first service node according to the service update data obtained by the merge. It can be seen that, by using the service update device in the embodiment of the present application, the service update data for service update performed by the service node is divided into multiple sub-update data in advance, and the service nodes that are to be service-updated share the diffusion of participation in each sub-update data.
- the data used by any service node for service update is obtained by collecting all the sub-update data from other associated service nodes and then combining them, effectively utilizing the computing resources and network resources of multiple service nodes, and improving the service of the multi-service node. Update efficiency to achieve fast, efficient, and secure service update for each service node.
- the embodiment of the present application further provides a storage medium for storing computer executable instructions.
- the specific embodiment may be a USB flash drive, an optical disk, a hard disk, or the like.
- the computer executable instructions stored in the storage medium can implement the following processes when executed by the processor:
- the following process is further implemented: before acquiring the plurality of sub-update data from the plurality of service nodes other than the first service node, the method further includes:
- the obtaining the plurality of sub-update data from the plurality of service nodes other than the first service node includes:
- the sub-update data corresponding to each of the data identifiers is respectively acquired from a plurality of service nodes other than the first service node.
- the receiving the service update request includes:
- the update data split information includes: a data identifier of all sub-update data obtained by splitting the service update data, and each sub-update data is distributed to at least A service node.
- each of the sub-update data segmented by the service update data is distributed to at least two service nodes when the computer-executable instructions stored by the storage medium are executed by the processor.
- the acquiring, according to the service update request, respectively, obtaining, corresponding to each of the data identifiers, from multiple service nodes other than the first service node Sub-update data including:
- sub-update data storage information of the plurality of service nodes except the first service node, where the sub-update data storage information includes: a data identifier of the sub-update data stored on the service node;
- the selecting a service node as the target service node according to each of the sub-update data storage information and the data identifier includes:
- the sub-update data distribution information includes: information of a service node where the sub-update data corresponding to each data identifier in the service update request is located;
- the selecting a service node as the target service node according to the sub-update data distribution information and the data identifier includes:
- a plurality of service nodes that have stored the sub-update data corresponding to the data identifier are used as an alternate service node;
- the candidate service node with the lowest load rate is determined as the target service node according to the load rate of each of the candidate service nodes.
- the method further includes:
- the next target service node is reselected according to the load rate from low to high, and the sub-update data corresponding to the data identifier is obtained from the reselected target service node.
- the computer-executable instructions stored by the storage medium when executed by the processor, respectively acquiring the sub-update data storage information of the plurality of service nodes except the first service node, including:
- sub-update data storage information broadcast by a plurality of service nodes other than the first service node, wherein the sub-update data storage information is that a plurality of service nodes other than the first service node acquire new sub-update data and update the local The child is updated after the data is stored in the information.
- the computer-executable instructions stored by the storage medium when executed by the processor, respectively acquiring the sub-update data storage information of the plurality of service nodes except the first service node, including:
- the computer-executable instructions stored by the storage medium when executed by the processor, combine the acquired plurality of sub-update data to obtain the service update data, including:
- each of the sub-update data is combined to obtain the service update data.
- the computer executable instructions stored by the storage medium when executed by the processor, further implement the following processes:
- the sub-update data corresponding to the acquisition request is transmitted to the corresponding service node.
- the computer executable instructions stored by the storage medium when executed by the processor, further implement the following processes:
- the local latest version of the sub-update data storage information is sent to the corresponding service node.
- the computer executable instructions stored in the storage medium in the embodiment of the present application when executed by the processor, acquire a plurality of sub-update data from a plurality of service nodes other than the first service node among the plurality of service nodes to be service updated; The obtained plurality of sub-update data are combined to obtain service update data, and the service update is performed on the first service node according to the service update data obtained by the combination. It can be seen that, by using the storage medium in the embodiment of the present application, the service update data for the service update by the service node is divided into multiple sub-update data in advance, and the service nodes that are to be service-updated share the diffusion of the participation of each sub-update data.
- the data used by any service node for service update is obtained by collecting all the sub-update data from other associated service nodes and then combining them, effectively utilizing the computing resources and network resources of multiple service nodes, and improving the service update of the multi-service node. Efficiency, fast, efficient and secure service update for each service node.
- PLD Programmable Logic Device
- FPGA Field Programmable Gate Array
- HDL Hardware Description Language
- the controller can be implemented in any suitable manner, for example, the controller can take the form of, for example, a microprocessor or processor and a computer readable medium storing computer readable program code (eg, software or firmware) executable by the (micro)processor.
- computer readable program code eg, software or firmware
- examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, The Microchip PIC18F26K20 and the Silicone Labs C8051F320, the memory controller can also be implemented as part of the memory's control logic.
- the controller can be logically programmed by means of logic gates, switches, ASICs, programmable logic controllers, and embedding.
- Such a controller can therefore be considered a hardware component, and the means for implementing various functions included therein can also be considered as a structure within the hardware component.
- a device for implementing various functions can be considered as a software module that can be both a method of implementation and a structure within a hardware component.
- the system, device, module or unit illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product having a certain function.
- a typical implementation device is a computer.
- the computer can be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or A combination of any of these devices.
- embodiments of the present application can be provided as a method, system, or computer program product.
- the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment in combination of software and hardware.
- the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
- the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
- the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
- These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
- the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
- a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
- processors CPUs
- input/output interfaces network interfaces
- memory volatile and non-volatile memory
- the memory may include non-persistent memory, random access memory (RAM), and/or non-volatile memory in a computer readable medium, such as read only memory (ROM) or flash memory.
- RAM random access memory
- ROM read only memory
- Memory is an example of a computer readable medium.
- Computer readable media includes both permanent and non-persistent, removable and non-removable media.
- Information storage can be implemented by any method or technology.
- the information can be computer readable instructions, data structures, modules of programs, or other data.
- Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory. (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other memory technology, compact disk read only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, Magnetic tape cartridges, magnetic tape storage or other magnetic storage devices or any other non-transportable media can be used to store information that can be accessed by a computing device.
- computer readable media does not include temporary storage of computer readable media, such as modulated data signals and carrier waves.
- embodiments of the present application can be provided as a method, system, or computer program product.
- the present application can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment in combination of software and hardware.
- the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
- the application can be described in the general context of computer-executable instructions executed by a computer, such as a program module.
- program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types.
- the present application can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are connected through a communication network.
- program modules can be located in both local and remote computer storage media including storage devices.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供了一种服务更新方法及装置、系统,该方法包括:在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据;将获取到的多个子更新数据进行合并,得到服务更新数据;根据合并得到的服务更新数据,对第一服务节点进行服务更新。基于预先将用于服务节点进行服务更新的服务更新数据分割为多个子更新数据,多个待服务更新的服务节点共用参与各子更新数据的扩散,任一服务节点用于服务更新的数据是从其他关联服务节点中收集所有子更新数据后再合并得到的,有效利用多个服务节点的计算资源和网路资源,提高了多服务节点的服务更新效率,实现快速、高效、安全地对各服务节点进行服务更新。
Description
本申请涉及服务更新技术领域,尤其涉及一种服务更新方法及装置、系统。
目前,随着互联网、云计算产业的快速发展,互联网或云计算厂商需要频繁部署、更新产品功能和服务。在大型互联网产品中,对客户端提供的功能和服务往往由成百上千台服务节点上的各类软件参与实现的。产品功能和服务的每次部署均需要更新所有服务节点上的相关软件或配置。
当前,相关技术中提供了一种服务更新方法,主要为:首先,将更新服务时所需的服务更新数据上传至指定客户机,即用于更新各服务节点上的相关软件或配置的设备;然后,该指定客户机通过网络依次将服务更新数据传输至多个待服务更新的服务节点,服务节点接收到服务更新数据后进行本地服务更新,在整个服务更新的过程中,只有指定客户机参与服务更新数据的分发,各服务节点均等待指定客户机将服务更新数据传输至本地。另外,在整个服务更新的过程中,一旦指定客户机出现单点故障,将导致服务更新数据无法正常发布而暂停,进而导致出现线上多个服务节点的服务版本不一致或功能异常的情况。
由此可知,采用现有技术中的服务更新方法,对多个服务节点进行服务更新的过程中,存在对指定客户机依赖性高、服务更新耗费时间长、更新效率低的问题。
发明内容
本申请实施例的目的是提供一种服务更新方法及装置、系统,基于预先将用于服务节点进行服务更新的服务更新数据分割为多个子更新数据,多个待服务更新的服务节点共用参与各子更新数据的扩散,任一服务节点用于服务更新的数据是从其他关联服务节点中收集所有子更新数据后再合并得到的,有效利用多个服务节点的计算资源和网路资源,提高了多服务节点的服务更新效率,实现快速、高效、安全地对各服务节点进行服务更新。
为解决上述技术问题,本申请实施例是这样实现的:
本申请实施例提供了一种服务更新方法,包括:
在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,其中,所述多个子更新数据为预先由服务更新数据分割后得到的;
将获取到的所述多个子更新数据进行合并,得到所述服务更新数据;
根据合并得到的所述服务更新数据,对所述第一服务节点进行服务更新。
本申请实施例提供了一种服务更新装置,包括:
子数据获取模块,用于在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,其中,所述多个子更新数据为预先由服务更新数据分割后得到的;
更新数据生成模块,用于将获取到的所述多个子更新数据进行合并,得到所述服务更新数据;
服务更新模块,用于根据合并得到的所述服务更新数据,对所述第一服务节点进行服务更新。
本申请实施例提供了一种服务更新系统,包括:待服务更新的多个服务节点,两两服务节点之间通信连接,每个服务节点设置有上述服务更新装置。
本申请实施例提供了一种服务更新设备,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,其中,所述多个子更新数据为预先由服务更新数据分割后得到的;
将获取到的所述多个子更新数据进行合并,得到所述服务更新数据;
根据合并得到的所述服务更新数据,对所述第一服务节点进行服务更新。
本申请实施例提供了一种存储介质,用于存储计算机可执行指令,所述可执行指令在被执行时实现以下流程:
在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个 子更新数据,其中,所述多个子更新数据为预先由服务更新数据分割后得到的;
将获取到的所述多个子更新数据进行合并,得到所述服务更新数据;
根据合并得到的所述服务更新数据,对所述第一服务节点进行服务更新。
本申请实施例中的服务更新方法及装置、系统,在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据;将获取到的多个子更新数据进行合并,得到服务更新数据;根据合并得到的服务更新数据,对第一服务节点进行服务更新。基于预先将用于服务节点进行服务更新的服务更新数据分割为多个子更新数据,多个待服务更新的服务节点共用参与各子更新数据的扩散,任一服务节点用于服务更新的数据是从其他关联服务节点中收集所有子更新数据后再合并得到的,有效利用多个服务节点的计算资源和网路资源,提高了多服务节点的服务更新效率,实现快速、高效、安全地对各服务节点进行服务更新。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的服务更新的应用场景示意图;
图2为本申请实施例提供的服务更新方法的第一种流程示意图;
图3为本申请实施例提供的服务更新方法的第二种流程示意图;
图4a为本申请实施例提供的服务更新方法中子更新数据扩散的实现原理示意图之一;
图4b为本申请实施例提供的服务更新方法中子更新数据扩散的实现原理示意图之二;
图4c为本申请实施例提供的服务更新方法中子更新数据扩散的实现原理示意图之三;
图4d为本申请实施例提供的服务更新方法中子更新数据扩散的实现原理示意图之四;
图5为本申请实施例提供的服务更新方法的第三种流程示意图;
图6为本申请实施例提供的服务更新装置的第一种模块组成示意图;
图7为本申请实施例提供的服务更新装置的第二种模块组成示意图;
图8为本申请实施例提供的服务更新系统的结构示意图;
图9为本申请实施例提供的服务更新设备的结构示意图。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本申请实施例提供了一种服务更新方法及装置、系统,基于预先将用于服务节点进行服务更新的服务更新数据分割为多个子更新数据,多个待服务更新的服务节点共用参与各子更新数据的扩散,任一服务节点用于服务更新的数据是从其他关联服务节点中收集所有子更新数据后再合并得到的,有效利用多个服务节点的计算资源和网路资源,提高了多服务节点的服务更新效率,实现快速、高效、安全地对各服务节点进行服务更新。
图1为本申请实施例提供的服务更新的应用场景示意图,如图1所示,在图1中涉及多个待服务更新的服务节点,该服务节点为互联网服务或云计算服务的托管者,可以是物理机、虚拟容器、或服务器软件等,在子更新数据初次分发阶段,即首次将由服务更新数据分割得到的多个子更新数据分发给多个服务节点的过程,每个子更新数据被分发到至少一个服务节点中;随之进入子更新数据的扩散阶段,随着子更新数据的不断扩散,每个子更新数据所在的服务节点的数量越来越多,每个服务节点存储的子更新数据的个数也越来越多,任一服务节点收集所有子更新数据后,合并得到完整的服务更新数据,并利用该服务更新数据完成本地服务更新。其中,在需要对产品功能和服务进行更新部署时,先更新待服务更新的所有服务节点上的相关软件或配置,在服务更新过程中,具有跨机房、分布式去中心化、容错机制、系统无关、硬件无关的特点,充分利用服务节点之间、机房之间的网路资源和计算资源,保证子更新数据快速、高效、安全、可靠地在多服务节点中扩散。最终,每个待服务更新的服务节点均合并得到一份完整的服务 更新数据,从而实现多服务节点的服务更新。
图2为本申请实施例提供的服务更新方法的第一种流程示意图,图2中的方法能够由图1中的服务节点100执行,适用于互联网服务和云计算服务的服务更新部署,如图2所示,该方法至少包括以下步骤:
S201,在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,其中,该多个子更新数据为预先由服务更新数据分割后得到的,第一服务节点为待服务更新的多个服务节点中的任一服务节点,由于任一服务节点不仅参与子更新数据的扩散,且自身也需要进行服务更新,因此,在子更新数据由一个服务节点扩散到其他服务节点的过程中,传输的子更新数据是服务更新数据分割后得到的数据子块的数据副本。其中,第一服务节点获取到的多个子更新数据可以来自第一服务节点以外的部分服务节点,也可以是来自第一服务节点以外的全部服务节点。
S202,将获取到的多个子更新数据进行合并,得到用于服务更新的服务更新数据,具体的,获取到所有的子更新数据后,将多个子更新数据还原成分割前的服务更新数据。
S203,根据合并得到的服务更新数据,对第一服务节点进行服务更新,具体的,在由多个子更新数据合并得到完整的服务更新数据后,如果本次服务更新为原应用服务的升级,则利用该服务更新数据替代与待升级服务相关的原服务数据,如果本次服务更新为新增应用服务,则将该服务更新数据添加至原服务数据,再重启本服务节点服务。
例如,针对支付宝应用中新增的“发红包赚赏金”功能,需要将实现“发红包赚赏金”应用服务的服务更新数据分割为多个子更新数据,再采用步骤S201至S203使得各提供该应用服务的服务节点获取到所有子更新数据并合并为服务更新数据,各服务节点利用该服务更新数据更新本地应用服务,进而对客户端提供相应的应用服务。
本申请实施例中,基于预先将用于服务节点进行服务更新的服务更新数据分割为多个子更新数据,多个待服务更新的服务节点共用参与各子更新数据的扩散,任一服务节点用于服务更新的数据是从其他关联服务节点中收集所有子更新数据后再合并得到的,有效利用多个服务节点的计算资源和网路资源,提高了多服务节点的服务更新效率,实现快速、高效、安全地对各服务节点进行服务更新。
其中,如图3所示,在S201在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据之前,还包括:
S204,接收服务更新请求,其中,该服务更新请求携带有由服务更新数据分割得到的所有子更新数据的数据标识;具体的,每个子更新数据对应于一个数据标识,例如,可以将数据序号作为子更新数据的数据标识,以服务更新数据被分割成m个子更新数据为例,首个子更新数据的数据标识为1,最后一个自更新数据的数据标识为m。
对应的,上述S201在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,具体包括:
S2011,在待服务更新的多个服务节点中,根据接收到的服务更新请求,从第一服务节点以外的多个服务节点中分别获取与各数据标识对应的子更新数据。
在具体实施时,如图4a所示,在待服务更新的N个服务节点中,将服务更新数据上传至任一服务节点(如,服务节点k),该服务节点接收到服务更新数据后,将服务更新数据分割为多个子更新数据(如,分割为m个子更新数据);在待服务更新的多个服务节点中,如图4b所示,选取目标数量的服务节点作为首发服务节点(如,首发服务节点的数量为x,x≤N),将多个子更新数据分发给多个首发服务节点(如,将m个子更新数据分发给x个首发服务节点),此时,针对每个首发服务节点,该首发服务节点至少接收到一个子更新数据,针对每个子更新数据,该子更新数据至少在一个首发服务节点上存在,此过程为子更新数据初次分发阶段,其中,如果第一服务节点属于首发服务节点,则接收服务节点k的服务更新请求;如果第一服务节点不属于首发服务节点,则接收服务节点k或任一首发服务节点的服务更新请求。随之进入子更新数据的扩散阶段,如图4c所示,各子更新数据在多个服务节点之间进行扩散,最终,每个服务节点获取到所有子更新数据,如图4d所示,将获取到的多个子更新数据进行合并,得到用于服务更新的服务更新数据。
具体的,针对第一服务节点属于首发服务节点的情况,上述S204接收服务更新请求,具体包括:
接收初次分发的至少一个子更新数据和更新数据分割信息,其中,该更新数据分割信息包括:由服务更新数据分割得到的所有子更新数据的数据标识,且每个子更新数据均被分发到至少一个服务节点。
其中,如果第一服务节点参与子更新数据初次分发阶段,第一服务节点接收到的服务更新请求中可以同时携带至少一个子更新数据和更新数据分割信息,第一服务节点接收到初次分发的至少一个子更新数据后,参与后续的子更新数据的扩散阶段,将本地已 存储的子更新数据传输至需要该子更新数据的服务节点,以及从其他服务节点中获取本地不存在的子更新数据。
针对第一服务节点不属于首发服务节点的情况,第一服务节点直接进入子更新数据的扩散阶段,第一服务节点接收到的服务更新请求中可以只携带更新数据分割信息,根据该更新数据分割信息向其他服务节点获取本地不存在的子更新数据,同时获取到子更新数据后,如果接收到子更新数据获取请求,则将本地已存储的子更新数据传输至需要该子更新数据的服务节点。
进一步的,考虑到初次分发时可能存在数据丢包、或者服务节点未将接收到的子更新数据扩散到其他服务节点时出现异常,导致子更新数据无法正常扩散到所有服务节点,为了确保各待服务更新的服务节点均能够获取到所有子更新数据,基于此,由服务更新数据分割得到的每个子更新数据均被分发到至少两个服务节点,即将同一子更新数据分发给两个首发服务节点。
具体的,在子更新数据初次分发阶段,即将多个子更新数据分发给多个首发服务节点的过程中,将同一子更新数据分发给至少两个首发服务节点,此时,在待服务更新的多个服务节点中,每个子更新数据存储于至少两个服务节点中,这样即使某一服务节点出现异常,仍可以从另一服务节点中获取子更新数据,保证了各子更新数据均能够正常扩散到所有服务节点,进而确保各待服务更新的服务节点均能够获取到所有子更新数据,提高了服务更新数据发布成功率。
其中,如图5所示,上述S2011在待服务更新的多个服务节点中,根据接收到的服务更新请求,从第一服务节点以外的多个服务节点中分别获取与各数据标识对应的子更新数据,具体包括:
S20111,分别获取第一服务节点以外的多个服务节点的子更新数据存储信息,其中,该子更新数据存储信息包括:服务节点上已存储的子更新数据的数据标识。
S20112,针对服务更新请求中每个数据标识,判断第一服务节点是否存在与该数据标识对应的子更新数据;具体的,按照预设顺序,逐一查询本地是否存在各数据标识对应的子更新数据,如果不存在,则向已存储有该子更新数据的服务节点获取。
若否,则执行S20113,根据各子更新数据存储信息和本地不存在的子更新数据对应的目标数据标识,选取一个服务节点作为目标服务节点,以及从该目标服务节点中获取目标数据标识对应的子更新数据。
其中,第一服务节点获取到除自身以外的各服务节点的子更新数据存储信息后,可以确定各子更新数据分布在哪些服务节点中,进而有针对性地从目标服务节点中获取本地不存在的子更新数据,直到本地存储有所有数据标识对应的子更新数据,具体的,第一服务接节点可以同时从至少两个不同的服务节点中获取不同的数据标识对应的子更新数据,并且,所有服务节点能够同时获取各自所需的子更新数据,将数据处理负载和数据传输负载分配到所有服务节点上,大大节省了服务更新数据获取时间,提高了多服务节点的服务更新效率和成功率。
进一步的,考虑到在确定目标服务节点的过程中,如果待服务更新的服务节点的数量比较多,那么获取到的子更新数据存储信息的数量也较多,为了提高目标服务节点确定效率,基于此,上述S20113根据各子更新数据存储信息和本地不存在的子更新数据对应的目标数据标识,选取一个服务节点作为目标服务节点,具体包括:
根据各子更新数据存储信息,确定子更新数据分布信息,其中,该子更新数据分布信息包括:服务更新请求中各数据标识对应的子更新数据所在的服务节点的信息。
根据子更新数据分布信息和本地不存在的子更新数据对应的目标数据标识,选取一个服务节点作为目标服务节点。
具体的,在接收到除自身以外的多个服务节点的子更新数据存储信息后,先对接收到的多个子更新数据存储信息进行汇总,得到子更新数据分布信息,在子更新数据分布信息中,直接查询到各数据标识与存储该数据标识对应的子更新数据的服务节点的信息之间的对应关系,例如,数据标识1—服务节点A\B\C,即服务节点A、服务节点B、服务节点C中存储有数据标识1对应的子更新数据,如果需要获取数据标识1对应的子更新数据,此时可以从服务节点A、服务节点B、服务节点C中选择一个作为目标服务节点,这样一目了然得知目标数据标识对应的子更新数据分布在哪些服务节点中,快速定位到目标服务节点。
进一步的,为了更加充分利用各服务节点的计算资源和网路资源,避免出现某个服务节点负载率很高,而其他服务节点负载率很低的情况,达到多服务节点的负载均衡的效果,基于此,上述根据子更新数据分布信息和本地不存在的子更新数据对应的目标数据标识,选取一个服务节点作为目标服务节点,具体包括:
基于子更新数据分布信息,将已存储目标数据标识对应的子更新数据的多个服务节点作为备选服务节点,其中,该目标数据标识为本地不存在的子更新数据对应的数据标 识。
根据各备选服务节点的负载率,将负载率最低的备选服务节点确定为目标服务节点。
具体的,在选取目标服务节点的过程中,参考备选服务节点的负载情况,在多个服务节点都存在目标数据标识对应的子更新数据的情况下,将负载率最低的备选服务节点确定为目标服务节点,这样能够实现更加充分利用各服务节点的计算资源和网路资源,达到多服务节点的负载均衡的效果,进而更进一步地提高多服务节点的服务更新效率。
具体的,在从目标服务节点中获取目标数据标识对应的子更新数据之后,还包括:
若子更新数据获取失败,则按照负载率由低至高的顺序重新选择下一个目标服务节点,并从重新选择的目标服务节点中获取目标数据标识对应的子更新数据。
其中,针对只有一个服务节点存储有目标数据标识对应的子更新数据的情况,需要等待该目标服务节点恢复后,继续从该目标服务节点中获取所需的子更新数据。为了避免该情况的发生,在具体实施时,在子更新数据初次分发阶段,将同一子更新数据分发给至少两个首发服务节点,可以保证至少两个服务节点存储有目标数据标识对应的子更新数据;另外,即使在子更新数据初次分发阶段,将同一子更新数据只分发给一个首发服务节点,而随着子更新数据的不断扩散,也能够保证至少两个服务节点存储有目标数据标识对应的子更新数据,提供了数据获取失败冗余机制,提高了服务更新数据发布成功率。
针对至少两个服务节点存储有目标数据标识对应的子更新数据的情况,第一服务节点从某一目标服务节点获取子更新数据失败后,则变更服务节点重新获取子更新数据,具体的,在服务更新过程中,若子更新数据获取失败,则说明目标服务节点出现异常,此时,第一服务节点重新选取下一个目标服务节点。
另外,当出现异常的目标服务节点恢复正常后,该目标服务节点继续执行:分别获取本服务节点以外的多个服务节点的子更新数据存储信息;针对服务更新请求中每个数据标识,判断本地是否存在与该数据标识对应的子更新数据;若否,则根据最新版本的各子更新数据存储信息和该数据标识,选取一个服务节点作为目标服务节点,以及从该目标服务节点中获取数据标识对应的子更新数据,直到获取到所有子更新数据。
其中,针对获取子更新数据存储信息的过程可以通过如下两种方式获得,具体为:
第一种方式:每个服务节点的子更新数据存在更新时,主动向其他服务节点广播更 新后的子更新数据存储信息,具体的,上述S20111分别获取第一服务节点以外的多个服务节点的子更新数据存储信息,具体包括:
接收第一服务节点以外的多个服务节点广播的子更新数据存储信息,其中,该子更新数据存储信息为第一服务节点以外的多个服务节点在获取到新的子更新数据且更新本地的子更新数据存储信息后得到的。
第二种方式:每个服务节点接收到其他服务节点的子数据存储信息获取请求后,才向相应的服务节点发送最新版本的子更新数据存储信息,具体的,上述S20111分别获取第一服务节点以外的多个服务节点的子更新数据存储信息,具体包括:
向第一服务节点以外的各服务节点发送子数据存储信息获取请求;
接收第一服务节点以外的各服务节点发送的本地最新版本的子更新数据存储信息,其中,该子更新数据存储信息为第一服务节点以外的各服务节点响应于子数据存储信息获取请求发送的。
其中,针对合并子更新数据的过程,具体的,上述S202将获取到的多个子更新数据进行合并,得到用于服务更新的服务更新数据,具体包括:
按照数据标识由小到大的顺序,对获取到的多个子更新数据进行排序;
根据排序结果,将各子更新数据组合得到用于服务更新的服务更新数据。
其中,针对每个服务节点而言,该服务节点不仅向其他服务节点获取子更新数据,还需要基于其他服务节点的子更新数据获取请求,向相应的服务节点发送子更新数据,基于此,上述方法还包括:
接收第一服务节点以外的各服务节点发送的子更新数据获取请求;
将与接收到的获取请求对应的子更新数据发送至相应的服务节点,以使接收到该子更新数据的服务节点判断本地是否存储有所有子更新数据,如果是,则进行本地服务更新,即第一服务节点也参与子更新数据的扩散。
其中,针对每个服务节点而言,该服务节点不仅向其他服务节点获取子更新数据存储信息,还需要向其他服务节点发送本地最新版本的子更新数据存储信息,基于此,上述方法还包括:
将本地最新版本的子更新数据存储信息发送至相应的服务节点,以使接收到该子更 新数据存储信息的服务节点确定目标服务节点,并从该目标服务节点获取子更新数据。
具体的,针对发送子更新数据存储信息的过程可以通过如下两种方式实现,具体为:
第一种方式:第一服务节点的子更新数据存在更新时,主动向其他服务节点广播更新后的子更新数据存储信息,具体的,上述将本地最新版本的子更新数据存储信息发送至相应的服务节点,具体包括:
在获取到新的子更新数据后,更新本地的子更新数据存储信息;
将更新后的子更新数据存储信息广播至第一服务节点以外的多个服务节点。
第二种方式:第一服务节点接收到其他服务节点的子数据存储信息获取请求后,才向该服务节点发送最新版本的子更新数据存储信息,具体的,上述将本地最新版本的子更新数据存储信息发送至相应的服务节点,具体包括:
接收第一服务节点以外的任一服务节点发送子数据存储信息获取请求;
将本地最新版本的子更新数据存储信息传输至发送子数据存储信息获取请求的服务节点。
本申请实施例中的服务更新方法,在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据;将获取到的多个子更新数据进行合并,得到服务更新数据;根据合并得到的服务更新数据,对第一服务节点进行服务更新。基于预先将用于服务节点进行服务更新的服务更新数据分割为多个子更新数据,多个待服务更新的服务节点共用参与各子更新数据的扩散,任一服务节点用于服务更新的数据是从其他关联服务节点中收集所有子更新数据后再合并得到的,有效利用多个服务节点的计算资源和网路资源,提高了多服务节点的服务更新效率,实现快速、高效、安全地对各服务节点进行服务更新。
对应上述图2至图5描述的服务更新方法,基于相同的技术构思,本申请实施例还提供了一种服务更新装置,图6为本申请实施例提供的服务更新装置的第一种模块组成示意图,该装置用于执行图2至图5描述的服务更新方法,如图6所示,该装置包括:
子数据获取模块601,用于在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,其中,所述多个子更新数据为预先由服务更新数据分割后得到的;
更新数据生成模块602,用于将获取到的所述多个子更新数据进行合并,得到所述服务更新数据;
服务更新模块603,用于根据合并得到的所述服务更新数据,对所述第一服务节点进行服务更新。
可选地,如图7所示,上述装置还包括:
更新请求接收模块604,用于在从第一服务节点以外的多个服务节点中获取多个子更新数据之前,接收服务更新请求,其中,所述服务更新请求携带有由服务更新数据分割得到的所有子更新数据的数据标识;
所述子数据获取模块601,具体用于:
根据所述服务更新请求,从第一服务节点以外的多个服务节点中分别获取与各所述数据标识对应的子更新数据。
可选地,所述更新请求接收模块604,具体用于:
接收初次分发的至少一个子更新数据和更新数据分割信息,其中,所述更新数据分割信息包括:由服务更新数据分割得到的所有子更新数据的数据标识,且每个子更新数据均被分发到至少一个服务节点。
可选地,由服务更新数据分割得到的每个子更新数据均被分发到至少两个服务节点。
可选地,所述子数据获取模块601,进一步具体用于:
分别获取第一服务节点以外的多个服务节点的子更新数据存储信息,其中,所述子更新数据存储信息包括:服务节点上已存储的子更新数据的数据标识;
针对所述服务更新请求中每个数据标识,判断所述第一服务节点是否存在与该数据标识对应的子更新数据;
若否,则根据各所述子更新数据存储信息和所述数据标识,选取一个服务节点作为目标服务节点,以及从所述目标服务节点中获取所述数据标识对应的子更新数据。
可选地,所述子数据获取模块601,更进一步具体用于:
根据各所述子更新数据存储信息,确定子更新数据分布信息,其中,所述子更新数据分布信息包括:所述服务更新请求中各数据标识对应的子更新数据所在的服务节 点的信息;
根据所述子更新数据分布信息和所述数据标识,选取一个服务节点作为目标服务节点。
可选地,所述子数据获取模块601,再进一步具体用于:
基于所述子更新数据分布信息,将已存储所述数据标识对应的子更新数据的多个服务节点作为备选服务节点;
根据各所述备选服务节点的负载率,将负载率最低的备选服务节点确定为目标服务节点。
可选地,上述子数据获取模块601,还具体用于:
在从所述目标服务节点中获取所述数据标识对应的子更新数据之后,若子更新数据获取失败,则按照负载率由低至高的顺序重新选择下一个目标服务节点,并从重新选择的所述目标服务节点中获取所述数据标识对应的子更新数据。
可选地,所述子数据获取模块601,更进一步具体用于:
接收第一服务节点以外的多个服务节点广播的子更新数据存储信息,其中,所述子更新数据存储信息为第一服务节点以外的多个服务节点在获取到新的子更新数据且更新本地的子更新数据存储信息后得到的。
可选地,所述子数据获取模块601,更进一步具体用于:
向第一服务节点以外的各服务节点发送子数据存储信息获取请求;
接收第一服务节点以外的各服务节点发送的本地最新版本的子更新数据存储信息,其中,所述子更新数据存储信息为第一服务节点以外的各服务节点响应于所述子数据存储信息获取请求发送的。
可选地,所述更新数据生成模块602,具体用于:
按照数据标识由小到大的顺序,对所述多个子更新数据进行排序;
根据排序结果,将各所述子更新数据组合得到所述服务更新数据。
可选地,上述装置还包括:
子更新数据发送模块605,用于接收第一服务节点以外的各服务节点发送的子更 新数据获取请求;将与所述获取请求对应的子更新数据发送至相应的服务节点。
可选地,上述装置还包括:
存储信息发送模块606,用于将本地最新版本的子更新数据存储信息发送至相应的服务节点。
本申请实施例中的服务更新装置,在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据;将获取到的多个子更新数据进行合并,得到服务更新数据;根据合并得到的服务更新数据,对第一服务节点进行服务更新。基于预先将用于服务节点进行服务更新的服务更新数据分割为多个子更新数据,多个待服务更新的服务节点共用参与各子更新数据的扩散,任一服务节点用于服务更新的数据是从其他关联服务节点中收集所有子更新数据后再合并得到的,有效利用多个服务节点的计算资源和网路资源,提高了多服务节点的服务更新效率,实现快速、高效、安全地对各服务节点进行服务更新。
本发明实施例提供的服务更新装置能够实现上述服务更新方法对应的实施例中的各个过程,为避免重复,这里不再赘述。
进一步地,对应上述图2至图5所示的方法,基于相同的技术构思,本申请实施例还提供了一种服务更新系统,如图8所示,该系统包括:待服务更新的多个服务节点100,两两服务节点100之间通信连接,每个服务节点100设置有上述服务更新装置;其中,由服务更新数据分割得到的多个子更新数据(即数据子块1至m)在服务节点100之间扩散,以使各服务节点100均获取到所有子更新数据。
具体的,任一待服务更新的第一服务节点,用于在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,其中,所述多个子更新数据为预先由服务更新数据分割后得到的;将获取到的所述多个子更新数据进行合并,得到所述服务更新数据;根据合并得到的所述服务更新数据,对所述第一服务节点进行服务更新。
进一步的,所述第一服务节点,还用于:
接收服务更新请求,其中,所述服务更新请求携带有由服务更新数据分割得到的所有子更新数据的数据标识;
根据所述服务更新请求,分别获取与各所述数据标识对应的子更新数据。
进一步的,所述多个服务节点中任一服务节点(即上述服务节点k),用于:
接收服务更新数据和数据分割指示;
根据所述数据分割指示,将所述服务更新数据分割为多个子更新数据;
从多个待服务更新的服务节点中,选取目标数量的多个初始分配节点,其中,该初始分配节点相当于上述首发服务节点;
向所述多个初始分配节点发送服务更新请求,其中,所述服务更新请求携带有初次分发的至少一个子更新数据和更新数据分割信息,每个子更新数据被分发给至少一个已选取的初始分配节点。
进一步的,每个子更新数据被分发给至少两个已选取的初始分配节点。
本申请实施例中的服务更新系统,针对任一服务节点,在待服务更新的多个服务节点中,从本服务节点以外的多个服务节点中获取多个子更新数据;将获取到的多个子更新数据进行合并,得到服务更新数据;根据合并得到的服务更新数据,对第一服务节点进行服务更新。基于预先将用于服务节点进行服务更新的服务更新数据分割为多个子更新数据,多个待服务更新的服务节点共用参与各子更新数据的扩散,任一服务节点用于服务更新的数据是从其他关联服务节点中收集所有子更新数据后再合并得到的,有效利用多个服务节点的计算资源和网路资源,提高了多服务节点的服务更新效率,实现快速、高效、安全地对各服务节点进行服务更新。
本发明实施例提供的服务更新系统能够实现上述服务更新方法对应的实施例中的各个过程,为避免重复,这里不再赘述。
进一步地,对应上述图2至图5所示的方法,基于相同的技术构思,本申请实施例还提供了一种服务更新设备,该设备用于执行上述的服务更新方法,如图9所示。
服务更新设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器901和存储器902,存储器902中可以存储有一个或一个以上存储应用程序或数据。其中,存储器902可以是短暂存储或持久存储。存储在存储器902的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对服务更新设备中的一系列计算机可执行指令。更进一步地,处理器901可以设置为与存储器902通信,在服务更新设备上执行存储器902中的一系列计算机可执行指令。服务更新设备还可以包括一个或一个以上电源903,一个或一个以上有线或无线网络接口904,一个或一个 以上输入输出接口905,一个或一个以上键盘906等。
在一个具体的实施例中,服务更新设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对服务更新设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,其中,所述多个子更新数据为预先由服务更新数据分割后得到的;
将获取到的所述多个子更新数据进行合并,得到所述服务更新数据;
根据合并得到的所述服务更新数据,对所述第一服务节点进行服务更新。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:在从第一服务节点以外的多个服务节点中获取多个子更新数据之前,还包括:
接收服务更新请求,其中,所述服务更新请求携带有由服务更新数据分割得到的所有子更新数据的数据标识;
所述从第一服务节点以外的多个服务节点中获取多个子更新数据,包括:
根据所述服务更新请求,从第一服务节点以外的多个服务节点中分别获取与各所述数据标识对应的子更新数据。
可选地,计算机可执行指令在被执行时,所述接收服务更新请求,包括:
接收初次分发的至少一个子更新数据和更新数据分割信息,其中,所述更新数据分割信息包括:由服务更新数据分割得到的所有子更新数据的数据标识,且每个子更新数据均被分发到至少一个服务节点。
可选地,计算机可执行指令在被执行时,由服务更新数据分割得到的每个子更新数据均被分发到至少两个服务节点。
可选地,计算机可执行指令在被执行时,所述根据所述服务更新请求,从第一服务节点以外的多个服务节点中分别获取与各所述数据标识对应的子更新数据,包括:
分别获取第一服务节点以外的多个服务节点的子更新数据存储信息,其中,所述子更新数据存储信息包括:服务节点上已存储的子更新数据的数据标识;
针对所述服务更新请求中每个数据标识,判断所述第一服务节点是否存在与该数据标识对应的子更新数据;
若否,则根据各所述子更新数据存储信息和所述数据标识,选取一个服务节点作为目标服务节点,以及从所述目标服务节点中获取所述数据标识对应的子更新数据。
可选地,计算机可执行指令在被执行时,所述根据各所述子更新数据存储信息和所述数据标识,选取一个服务节点作为目标服务节点,包括:
根据各所述子更新数据存储信息,确定子更新数据分布信息,其中,所述子更新数据分布信息包括:所述服务更新请求中各数据标识对应的子更新数据所在的服务节点的信息;
根据所述子更新数据分布信息和所述数据标识,选取一个服务节点作为目标服务节点。
可选地,计算机可执行指令在被执行时,所述根据所述子更新数据分布信息和所述数据标识,选取一个服务节点作为目标服务节点,包括:
基于所述子更新数据分布信息,将已存储所述数据标识对应的子更新数据的多个服务节点作为备选服务节点;
根据各所述备选服务节点的负载率,将负载率最低的备选服务节点确定为目标服务节点。
可选地,计算机可执行指令在被执行时,在从所述目标服务节点中获取所述数据标识对应的子更新数据之后,还包括:
若子更新数据获取失败,则按照负载率由低至高的顺序重新选择下一个目标服务节点,并从重新选择的所述目标服务节点中获取所述数据标识对应的子更新数据。
可选地,计算机可执行指令在被执行时,所述分别获取第一服务节点以外的多个服务节点的子更新数据存储信息,包括:
接收第一服务节点以外的多个服务节点广播的子更新数据存储信息,其中,所述子更新数据存储信息为第一服务节点以外的多个服务节点在获取到新的子更新数据且更新本地的子更新数据存储信息后得到的。
可选地,计算机可执行指令在被执行时,所述分别获取第一服务节点以外的多 个服务节点的子更新数据存储信息,包括:
向第一服务节点以外的各服务节点发送子数据存储信息获取请求;
接收第一服务节点以外的各服务节点发送的本地最新版本的子更新数据存储信息,其中,所述子更新数据存储信息为第一服务节点以外的各服务节点响应于所述子数据存储信息获取请求发送的。
可选地,计算机可执行指令在被执行时,所述将获取到的所述多个子更新数据进行合并,得到所述服务更新数据,包括:
按照数据标识由小到大的顺序,对所述多个子更新数据进行排序;
根据排序结果,将各所述子更新数据组合得到所述服务更新数据。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
接收第一服务节点以外的各服务节点发送的子更新数据获取请求;
将与所述获取请求对应的子更新数据发送至相应的服务节点。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
将本地最新版本的子更新数据存储信息发送至相应的服务节点。
本申请实施例中的服务更新设备,在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据;将获取到的多个子更新数据进行合并,得到服务更新数据;根据合并得到的服务更新数据,对第一服务节点进行服务更新。可见,通过本申请实施例中的服务更新设备,基于预先将用于服务节点进行服务更新的服务更新数据分割为多个子更新数据,多个待服务更新的服务节点共用参与各子更新数据的扩散,任一服务节点用于服务更新的数据是从其他关联服务节点中收集所有子更新数据后再合并得到的,有效利用多个服务节点的计算资源和网路资源,提高了多服务节点的服务更新效率,实现快速、高效、安全地对各服务节点进行服务更新。
进一步地,对应上述图2至图5所示的方法,基于相同的技术构思,本申请实施例还提供了一种存储介质,用于存储计算机可执行指令,一种具体的实施例中,该存储介质可以为U盘、光盘、硬盘等,该存储介质存储的计算机可执行指令在被处理器执 行时,能实现以下流程:
在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,其中,所述多个子更新数据为预先由服务更新数据分割后得到的;
将获取到的所述多个子更新数据进行合并,得到所述服务更新数据;
根据合并得到的所述服务更新数据,对所述第一服务节点进行服务更新。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:在从第一服务节点以外的多个服务节点中获取多个子更新数据之前,还包括:
接收服务更新请求,其中,所述服务更新请求携带有由服务更新数据分割得到的所有子更新数据的数据标识;
所述从第一服务节点以外的多个服务节点中获取多个子更新数据,包括:
根据所述服务更新请求,从第一服务节点以外的多个服务节点中分别获取与各所述数据标识对应的子更新数据。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述接收服务更新请求,包括:
接收初次分发的至少一个子更新数据和更新数据分割信息,其中,所述更新数据分割信息包括:由服务更新数据分割得到的所有子更新数据的数据标识,且每个子更新数据均被分发到至少一个服务节点。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,由服务更新数据分割得到的每个子更新数据均被分发到至少两个服务节点。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述根据所述服务更新请求,从第一服务节点以外的多个服务节点中分别获取与各所述数据标识对应的子更新数据,包括:
分别获取第一服务节点以外的多个服务节点的子更新数据存储信息,其中,所述子更新数据存储信息包括:服务节点上已存储的子更新数据的数据标识;
针对所述服务更新请求中每个数据标识,判断所述第一服务节点是否存在与该数据标识对应的子更新数据;
若否,则根据各所述子更新数据存储信息和所述数据标识,选取一个服务节点 作为目标服务节点,以及从所述目标服务节点中获取所述数据标识对应的子更新数据。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述根据各所述子更新数据存储信息和所述数据标识,选取一个服务节点作为目标服务节点,包括:
根据各所述子更新数据存储信息,确定子更新数据分布信息,其中,所述子更新数据分布信息包括:所述服务更新请求中各数据标识对应的子更新数据所在的服务节点的信息;
根据所述子更新数据分布信息和所述数据标识,选取一个服务节点作为目标服务节点。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述根据所述子更新数据分布信息和所述数据标识,选取一个服务节点作为目标服务节点,包括:
基于所述子更新数据分布信息,将已存储所述数据标识对应的子更新数据的多个服务节点作为备选服务节点;
根据各所述备选服务节点的负载率,将负载率最低的备选服务节点确定为目标服务节点。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,在从所述目标服务节点中获取所述数据标识对应的子更新数据之后,还包括:
若子更新数据获取失败,则按照负载率由低至高的顺序重新选择下一个目标服务节点,并从重新选择的所述目标服务节点中获取所述数据标识对应的子更新数据。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述分别获取第一服务节点以外的多个服务节点的子更新数据存储信息,包括:
接收第一服务节点以外的多个服务节点广播的子更新数据存储信息,其中,所述子更新数据存储信息为第一服务节点以外的多个服务节点在获取到新的子更新数据且更新本地的子更新数据存储信息后得到的。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述分别获取第一服务节点以外的多个服务节点的子更新数据存储信息,包括:
向第一服务节点以外的各服务节点发送子数据存储信息获取请求;
接收第一服务节点以外的各服务节点发送的本地最新版本的子更新数据存储信 息,其中,所述子更新数据存储信息为第一服务节点以外的各服务节点响应于所述子数据存储信息获取请求发送的。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述将获取到的所述多个子更新数据进行合并,得到所述服务更新数据,包括:
按照数据标识由小到大的顺序,对所述多个子更新数据进行排序;
根据排序结果,将各所述子更新数据组合得到所述服务更新数据。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
接收第一服务节点以外的各服务节点发送的子更新数据获取请求;
将与所述获取请求对应的子更新数据发送至相应的服务节点。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
将本地最新版本的子更新数据存储信息发送至相应的服务节点。
本申请实施例中的存储介质存储的计算机可执行指令在被处理器执行时,在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据;将获取到的多个子更新数据进行合并,得到服务更新数据;根据合并得到的服务更新数据,对第一服务节点进行服务更新。可见,通过本申请实施例中的存储介质,基于预先将用于服务节点进行服务更新的服务更新数据分割为多个子更新数据,多个待服务更新的服务节点共用参与各子更新数据的扩散,任一服务节点用于服务更新的数据是从其他关联服务节点中收集所有子更新数据后再合并得到的,有效利用多个服务节点的计算资源和网路资源,提高了多服务节点的服务更新效率,实现快速、高效、安全地对各服务节点进行服务更新。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备 或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人 员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (20)
- 一种服务更新方法,应用于任一待服务更新的第一服务节点,其特征在于,包括:在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,其中,所述多个子更新数据为预先由服务更新数据分割后得到的;将获取到的所述多个子更新数据进行合并,得到所述服务更新数据;根据合并得到的所述服务更新数据,对所述第一服务节点进行服务更新。
- 根据权利要求1所述的方法,其特征在于,在从第一服务节点以外的多个服务节点中获取多个子更新数据之前,还包括:接收服务更新请求,其中,所述服务更新请求携带有由服务更新数据分割得到的所有子更新数据的数据标识;所述从第一服务节点以外的多个服务节点中获取多个子更新数据,包括:根据所述服务更新请求,从第一服务节点以外的多个服务节点中分别获取与各所述数据标识对应的子更新数据。
- 根据权利要求2所述的方法,其特征在于,所述接收服务更新请求,包括:接收初次分发的至少一个子更新数据和更新数据分割信息,其中,所述更新数据分割信息包括:由服务更新数据分割得到的所有子更新数据的数据标识,且每个子更新数据均被分发到至少一个服务节点。
- 根据权利要求3所述的方法,其特征在于,由服务更新数据分割得到的每个子更新数据均被分发到至少两个服务节点。
- 根据权利要求2所述的方法,其特征在于,所述根据所述服务更新请求,从第一服务节点以外的多个服务节点中分别获取与各所述数据标识对应的子更新数据,包括:分别获取第一服务节点以外的多个服务节点的子更新数据存储信息,其中,所述子更新数据存储信息包括:服务节点上已存储的子更新数据的数据标识;针对所述服务更新请求中每个数据标识,判断所述第一服务节点是否存在与该数据标识对应的子更新数据;若否,则根据各所述子更新数据存储信息和所述数据标识,选取一个服务节点作为目标服务节点,以及从所述目标服务节点中获取所述数据标识对应的子更新数据。
- 根据权利要求5所述的方法,其特征在于,所述根据各所述子更新数据存储信息和所述数据标识,选取一个服务节点作为目标服务节点,包括:根据各所述子更新数据存储信息,确定子更新数据分布信息,其中,所述子更新数据分布信息包括:所述服务更新请求中各数据标识对应的子更新数据所在的服务节点的信息;根据所述子更新数据分布信息和所述数据标识,选取一个服务节点作为目标服务节点。
- 根据权利要求6所述的方法,其特征在于,所述根据所述子更新数据分布信息和所述数据标识,选取一个服务节点作为目标服务节点,包括:基于所述子更新数据分布信息,将已存储所述数据标识对应的子更新数据的多个服务节点作为备选服务节点;根据各所述备选服务节点的负载率,将负载率最低的备选服务节点确定为目标服务节点。
- 根据权利要求7所述的方法,其特征在于,在从所述目标服务节点中获取所述数据标识对应的子更新数据之后,还包括:若子更新数据获取失败,则按照负载率由低至高的顺序重新选择下一个目标服务节点,并从重新选择的所述目标服务节点中获取所述数据标识对应的子更新数据。
- 根据权利要求5所述的方法,其特征在于,所述分别获取第一服务节点以外的多个服务节点的子更新数据存储信息,包括:接收第一服务节点以外的多个服务节点广播的子更新数据存储信息,其中,所述子更新数据存储信息为第一服务节点以外的多个服务节点在获取到新的子更新数据且更新本地的子更新数据存储信息后得到的。
- 根据权利要求5所述的方法,其特征在于,所述分别获取第一服务节点以外的多个服务节点的子更新数据存储信息,包括:向第一服务节点以外的各服务节点发送子数据存储信息获取请求;接收第一服务节点以外的各服务节点发送的本地最新版本的子更新数据存储信息,其中,所述子更新数据存储信息为第一服务节点以外的各服务节点响应于所述子数据存储信息获取请求发送的。
- 根据权利要求2所述的方法,其特征在于,所述将获取到的所述多个子更新数据进行合并,得到所述服务更新数据,包括:按照数据标识由小到大的顺序,对所述多个子更新数据进行排序;根据排序结果,将各所述子更新数据组合得到所述服务更新数据。
- 根据权利要求1至11任一项所述的方法,其特征在于,还包括:接收第一服务节点以外的各服务节点发送的子更新数据获取请求;将与所述获取请求对应的子更新数据发送至相应的服务节点。
- 根据权利要求1至11任一项所述的方法,其特征在于,还包括:将本地最新版本的子更新数据存储信息发送至相应的服务节点。
- 一种服务更新装置,设置于任一待服务更新的第一服务节点,其特征在于,包括:子数据获取模块,用于在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,其中,所述多个子更新数据为预先由服务更新数据分割后得到的;更新数据生成模块,用于将获取到的所述多个子更新数据进行合并,得到所述服务更新数据;服务更新模块,用于根据合并得到的所述服务更新数据,对所述第一服务节点进行服务更新。
- 一种服务更新系统,包括:待服务更新的多个服务节点,两两服务节点之间通信连接,每个服务节点设置有如权利要求14所述的服务更新装置。
- 根据权利要求15所述的系统,其特征在于,每个所述服务节点,用于:接收服务更新请求,其中,所述服务更新请求携带有由服务更新数据分割得到的所有子更新数据的数据标识;根据所述服务更新请求,分别获取与各所述数据标识对应的子更新数据。
- 根据权利要求16所述的系统,其特征在于,所述多个服务节点中任一服务节点,用于:接收服务更新数据和数据分割指示;根据所述数据分割指示,将所述服务更新数据分割为多个子更新数据;从多个待服务更新的服务节点中,选取目标数量的多个初始分配节点;向所述多个初始分配节点发送服务更新请求,其中,所述服务更新请求携带有初次分发的至少一个子更新数据和更新数据分割信息,每个子更新数据被分发给至少一个已选取的初始分配节点。
- 根据权利要求17所述的系统,其特征在于,每个子更新数据被分发给至少两个已选取的初始分配节点。
- 一种服务更新设备,其特征在于,包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,其中,所述多个子更新数据为预先由服务更新数据分割后得到的;将获取到的所述多个子更新数据进行合并,得到所述服务更新数据;根据合并得到的所述服务更新数据,对所述第一服务节点进行服务更新。
- 一种存储介质,用于存储计算机可执行指令,其特征在于,所述可执行指令在被执行时实现以下流程:在待服务更新的多个服务节点中,从第一服务节点以外的多个服务节点中获取多个子更新数据,其中,所述多个子更新数据为预先由服务更新数据分割后得到的;将获取到的所述多个子更新数据进行合并,得到所述服务更新数据;根据合并得到的所述服务更新数据,对所述第一服务节点进行服务更新。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201810065040.2A CN108390914B (zh) | 2018-01-23 | 2018-01-23 | 一种服务更新方法及装置、系统 |
| CN201810065040.2 | 2018-01-23 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2019144809A1 true WO2019144809A1 (zh) | 2019-08-01 |
Family
ID=63077376
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2019/071136 Ceased WO2019144809A1 (zh) | 2018-01-23 | 2019-01-10 | 一种服务更新方法及装置、系统 |
Country Status (3)
| Country | Link |
|---|---|
| CN (2) | CN111866169B (zh) |
| TW (1) | TWI690187B (zh) |
| WO (1) | WO2019144809A1 (zh) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN111866169B (zh) * | 2018-01-23 | 2023-08-18 | 创新先进技术有限公司 | 一种服务更新方法及装置、系统 |
| CN111835812B (zh) * | 2019-11-13 | 2023-01-31 | 厦门雅基软件有限公司 | 全球的数据获取方法、装置、电子设备及计算机存储介质 |
| CN111586340B (zh) * | 2020-05-08 | 2021-11-19 | 青岛海信医疗设备股份有限公司 | 影像数据的加载、提供方法及装置 |
| CN112187548A (zh) * | 2020-10-09 | 2021-01-05 | 深圳壹账通智能科技有限公司 | 配置数据同步更新方法、装置、设备及存储介质 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101374072A (zh) * | 2007-08-24 | 2009-02-25 | 西门子公司 | 电力监控装置更新配置的方法、电力监控装置和能源管理系统 |
| CN107315792A (zh) * | 2017-06-14 | 2017-11-03 | 北京小米移动软件有限公司 | 页面更新方法、装置、电子设备和计算机可读存储介质 |
| CN108390914A (zh) * | 2018-01-23 | 2018-08-10 | 阿里巴巴集团控股有限公司 | 一种服务更新方法及装置、系统 |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7853609B2 (en) * | 2004-03-12 | 2010-12-14 | Microsoft Corporation | Update distribution system architecture and method for distributing software |
| RU2386218C2 (ru) * | 2004-03-12 | 2010-04-10 | Майкрософт Корпорейшн | Программный интерфейс приложений для администрирования распределением обновлений программного обеспечения в системе распределения обновлений |
| US20100031262A1 (en) * | 2008-07-31 | 2010-02-04 | Baird-Gent Jill M | Program Schedule Sub-Project Network and Calendar Merge |
| CN103294675B (zh) * | 2012-02-23 | 2018-08-03 | 上海盛大网络发展有限公司 | 一种分布式存储系统中的数据更新方法及装置 |
| CN102880650B (zh) * | 2012-08-27 | 2015-11-18 | 中国工商银行股份有限公司 | 一种数据匹配方法及装置 |
| CN104866491B (zh) * | 2014-02-24 | 2019-07-23 | 华为技术有限公司 | 一种并行主题挖掘方法及装置 |
| WO2015134679A2 (en) * | 2014-03-05 | 2015-09-11 | Scality, S.A. | Locking and i/o improvements of systems built with distributed consistent database implementations within an object store |
| CN107168788B (zh) * | 2016-03-07 | 2021-01-08 | 阿里巴巴集团控股有限公司 | 分布式系统中资源的调度方法以及装置 |
| CN106294627A (zh) * | 2016-07-28 | 2017-01-04 | 五八同城信息技术有限公司 | 数据管理方法及数据服务器 |
| CN107357857A (zh) * | 2017-06-29 | 2017-11-17 | 深圳市金立通信设备有限公司 | 一种更新缓存信息的方法及服务节点设备 |
-
2018
- 2018-01-23 CN CN202010752598.5A patent/CN111866169B/zh active Active
- 2018-01-23 CN CN201810065040.2A patent/CN108390914B/zh active Active
- 2018-12-11 TW TW107144474A patent/TWI690187B/zh active
-
2019
- 2019-01-10 WO PCT/CN2019/071136 patent/WO2019144809A1/zh not_active Ceased
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101374072A (zh) * | 2007-08-24 | 2009-02-25 | 西门子公司 | 电力监控装置更新配置的方法、电力监控装置和能源管理系统 |
| CN107315792A (zh) * | 2017-06-14 | 2017-11-03 | 北京小米移动软件有限公司 | 页面更新方法、装置、电子设备和计算机可读存储介质 |
| CN108390914A (zh) * | 2018-01-23 | 2018-08-10 | 阿里巴巴集团控股有限公司 | 一种服务更新方法及装置、系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111866169A (zh) | 2020-10-30 |
| CN108390914A (zh) | 2018-08-10 |
| CN111866169B (zh) | 2023-08-18 |
| TW201933851A (zh) | 2019-08-16 |
| TWI690187B (zh) | 2020-04-01 |
| CN108390914B (zh) | 2020-07-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102152556B1 (ko) | 서비스 프로세싱 및 합의 방법 및 디바이스 | |
| KR102208186B1 (ko) | 블록체인 합의 방법 및 디바이스 | |
| CN110875935B (zh) | 消息发布、处理、订阅方法、装置及系统 | |
| CN107368507A (zh) | 一种基于区块链的共识方法及装置 | |
| US11102284B2 (en) | Service processing methods and systems based on a consortium blockchain network | |
| KR20190118630A (ko) | 합의 검증을 위한 방법 및 장치 | |
| CN107395665A (zh) | 一种区块链业务受理及业务共识方法及装置 | |
| WO2019144809A1 (zh) | 一种服务更新方法及装置、系统 | |
| US9848306B2 (en) | Contextually aware dynamic group formation | |
| CN110955720B (zh) | 一种数据加载方法、装置及系统 | |
| US9804802B2 (en) | Application transparent continuous availability using synchronous replication across data stores in a failover cluster | |
| WO2020024650A1 (zh) | 数据处理方法和装置、客户端 | |
| CN114443230A (zh) | 一种虚拟机迁移方法及装置 | |
| CN117273924A (zh) | 交易执行方法及装置和电子设备 | |
| US12457095B2 (en) | Adaptive asymmetric-key compression for idempotent data stores in computer messaging | |
| CN116346878A (zh) | 访问区块链系统的方法、服务节点和业务系统 | |
| CN116170388A (zh) | 一种区块链网络的转发表生成方法及其数据传输方法 | |
| CN116016552A (zh) | 区块链网络的数据传输方法、装置、电子设备及存储介质 | |
| CN115033447A (zh) | 一种Kubernetes容器水平弹性伸缩能力提升方法和装置 | |
| CN118259954A (zh) | 应用配置信息获取方法、装置、设备及存储介质 | |
| HK1258556B (zh) | 一种服务更新方法及装置、系统 | |
| HK1258556A1 (zh) | 一种服务更新方法及装置、系统 | |
| CN107038077A (zh) | 消息蓄洪方法及装置 | |
| HK1246533B (zh) | 一种区块链共识方法、设备及系统 | |
| HK1247454B (zh) | 一种业务受理及共识的方法及装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19743102 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 19743102 Country of ref document: EP Kind code of ref document: A1 |