WO2019019897A1 - 数据处理系统、方法和装置 - Google Patents
数据处理系统、方法和装置 Download PDFInfo
- Publication number
- WO2019019897A1 WO2019019897A1 PCT/CN2018/094878 CN2018094878W WO2019019897A1 WO 2019019897 A1 WO2019019897 A1 WO 2019019897A1 CN 2018094878 W CN2018094878 W CN 2018094878W WO 2019019897 A1 WO2019019897 A1 WO 2019019897A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- location information
- server cluster
- target
- group
- client
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- 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
-
- 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/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Definitions
- the present application relates to the field of computer technology, and in particular to the field of Internet technologies, and in particular, to a data processing system, method and apparatus.
- Existing data processing systems typically provide data storage services using a single server cluster, for example, the producer sends the generated data to the server cluster through the producer client, and the consumer consumes The client gets data from the server cluster. Therefore, existing data processing systems have problems of poor stability and low data processing efficiency.
- the purpose of embodiments of the present application is to provide an improved data processing system, method and apparatus for solving the technical problems mentioned in the background art above.
- the embodiment of the present application provides a data processing system, where the system includes: a first client, a data synchronization end, and a second client; the first client is configured to receive a data sending instruction, and the foregoing data And sending, by the data synchronization end, the data in the first server cluster in the first server cluster group to the second server.
- a second server cluster in the cluster group the second client is configured to acquire data from the target second server cluster, wherein the target second server cluster belongs to the second server cluster group; Determining, by the target second server cluster, the data transmission interruption with the location information, determining, according to the location information, the target second location information group in the second location information group set stored in advance, wherein the second location information group set Each piece of second location information included in each of the second location information groups respectively corresponds to the second server set Different second server clusters in the group, wherein the target second location information group has second location information that matches the location information; and the second location information is selected from the target second location information group as the target second location.
- each of the second location information in the second location information set corresponds to the first location information, where the first location information is a second location information stored in the second location information group.
- the foregoing second client is further configured to: determine a target correspondence relationship in a pre-stored correspondence relationship list, where each correspondence relationship in the correspondence relationship list includes second location information and first location information.
- the storage location indicated by the second location information is a storage location in the target second server cluster, and the target correspondence relationship is a correspondence between the included second location information and the location information; and the second location information is The second location information group in which the first location information corresponding to the first location information is the same as the first location information included in the target correspondence relationship is found in the group set, and the found second location information group is used as the target second location information group.
- the location information includes an index number
- the second location information included in each correspondence in the correspondence relationship list includes a first index number
- the second client is further configured to: Searching for the same correspondence between the second location information included in the list and the location information; if not found, searching for the second location information included in the correspondence relationship list includes the correspondence relationship of the target first index number, and
- the searched second location information includes a correspondence relationship of the target first index number as a target correspondence, wherein the target first index number satisfies any one of the following conditions: the closest to the index number size and less than the foregoing The index number is closest to the index number and larger than the index number.
- the foregoing second client is further configured to: perform the following processing step: adding or subtracting the preset index value to the preset value to obtain an index number range, and the included second location information in the correspondence relationship list
- the second location information included in the correspondence between the first index number in the range of the index number includes the correspondence between the target first index number, and if found, the second location included
- the information includes the corresponding relationship of the target first index number as the target correspondence; if the second location information included in the information includes the corresponding relationship of the target first index number, the current preset value is incremented. And continue to perform the above processing steps.
- the system further includes a monitoring terminal, configured to: monitor a load condition of each first server cluster in the first server cluster group, and monitor the first server cluster group.
- the load status of each of the first server clusters is fed back to the first client; and/or monitoring the load status of each second server cluster in the second server cluster group, and the monitored second server set
- the load condition of each second server cluster in the group is fed back to the above second client.
- the foregoing second client is further configured to: obtain a candidate second server cluster group based on the target second location information group; and select each candidate in the candidate second server cluster group based on the latest received a load condition of the two server clusters, selecting a candidate second server cluster in the candidate second server cluster group, and selecting second location information corresponding to the selected candidate second server cluster in the target second location information group As the target second location information.
- some of the second server clusters in the second server cluster group are deployed in the same equipment room, and the second client has corresponding equipment room information; and the second client is further configured to: determine the candidate. In the second server cluster group, whether there is a candidate second server cluster that is not overloaded in the candidate second server cluster in the equipment room indicated by the equipment room information, and if yes, the candidate that is not overloaded is selected. The least loaded candidate second server cluster in the two server cluster.
- the foregoing second client is further configured to: if there is no candidate second server cluster that is not overloaded, from the candidate second server cluster group, not deployed in the equipment room information A candidate second server cluster that is not overloaded and has the smallest load is selected among the candidate second server clusters in the equipment room.
- the monitoring terminal is further configured to: when monitoring the first server cluster overload in the first server cluster group, to the first client group currently connected to the first server cluster Transmitting, by the at least one first client, a first cluster switching instruction; and/or, when monitoring the second server cluster overload in the second server cluster group, to the second client currently connected to the second server cluster At least one second client in the group sends a second cluster switching instruction.
- the first client is further configured to: switch from the currently connected first server cluster to the received first cluster switch in response to receiving the first cluster switching instruction sent by the monitoring terminal.
- the first server cluster indicated by the instruction is further configured to: switch from the currently connected first server cluster to the received first cluster switch in response to receiving the first cluster switching instruction sent by the monitoring terminal.
- the second client is further configured to: switch from the currently connected second server cluster to the received second cluster switch in response to receiving the second cluster switching instruction sent by the monitoring terminal.
- the second server cluster indicated by the instruction is further configured to: switch from the currently connected second server cluster to the received second cluster switch in response to receiving the second cluster switching instruction sent by the monitoring terminal.
- the monitoring terminal is further configured to: when monitoring, that the bandwidth utilization of the first server cluster in the first server cluster group exceeds a threshold, to the first client currently connected to the first server cluster At least one first client in the end group transmits a first rate limit command including a first transmission speed; and/or when monitoring that the bandwidth utilization of the second server cluster in the second server cluster group exceeds the threshold And transmitting, to the at least one second client of the second client group currently connected by the second server cluster, a second rate limit instruction including a second transmission speed.
- the first client is further configured to: in response to receiving the first speed limit command sent by the monitoring terminal, send data by using the first transmission speed included in the received first speed limit command. .
- the second client is further configured to: in response to receiving the second rate limit command sent by the monitoring terminal, acquire data by using the second transmission speed included in the received second rate limit instruction. .
- an embodiment of the present application provides a data processing method, including: in response to a data transmission interruption with location information currently being acquired from a target second server cluster, based on the location information, pre-stored Determining a target second location information group in the second location information group set, wherein the target second server cluster belongs to the second server cluster group, and each second location information group in the second location information group set is included
- Each of the second pieces of position information respectively corresponds to a different second server cluster in the second server cluster group, wherein the target second location information has second location information that matches the location information; and the target second location
- the second location information is selected as the target second location information in the information group; and the second server cluster corresponding to the target second location information continues to acquire data from the storage location indicated by the target second location information.
- each of the second location information in the second location information set corresponds to the first location information, where the first location information is a second location information stored in the second location information group.
- the determining, according to the location information, the target second location information group in the second location information group set that is stored in advance includes: determining a target correspondence relationship in a pre-stored correspondence relationship list, where the foregoing correspondence Each of the correspondences in the relationship list includes second location information and first location information, where the storage location indicated by the second location information is a storage location in the target second server cluster, and the target correspondence relationship is included Corresponding relationship between the two location information and the location information; searching for the second location information group corresponding to the first location information included in the target correspondence relationship in the second location information group set, The found second location information group is used as the target second location information group.
- the location information includes an index number
- the second location information included in each correspondence relationship in the correspondence relationship list includes a first index number
- determining the target correspondence relationship in the pre-stored correspondence relationship list includes: searching, in the foregoing correspondence list, the correspondence between the included second location information and the location information; if not found, searching for the included second location information in the corresponding relationship list, including the target first Corresponding relationship of the index number, and the searched second location information includes a correspondence relationship of the target first index number as a target correspondence, wherein the target first index number satisfies any one of the following conditions: The number size is closest to and smaller than the above index number, and is closest to the index number size and larger than the index number.
- the searching for the second location information included in the correspondence relationship list includes the correspondence of the target first index number, including: performing the following processing steps: adding or subtracting the preset index value to obtain an index a range of the second position information included in the correspondence between the first index number and the second index information included in the foregoing correspondence information list, wherein the second location information included in the index includes the target first index number.
- the second location information included in the search includes the correspondence relationship of the target first index number as the target correspondence relationship; if the second location information included is not found, the target first The corresponding relationship of the index numbers is performed by incrementing the current preset value and continuing the above processing steps.
- the selecting the second location information from the target second location information group as the target second location information includes: obtaining a candidate second server cluster group based on the target second location information group; And the load condition of each candidate second server cluster in the candidate second server cluster group, the candidate second server cluster is selected in the candidate second server cluster group, and the target second location information group is selected.
- the second location information corresponding to the selected candidate second server cluster is used as the target second location information, wherein the load situation is received from the connected monitoring terminal.
- some of the second server clusters in the second server cluster group are deployed in the same equipment room, and the second client has corresponding equipment room information; and the foregoing candidate second server set based on the latest received Selecting a candidate second server cluster in the candidate second server cluster group, including: determining, in the candidate second server cluster group, the information about the equipment room deployed in the group Whether there is a candidate second server cluster that is not overloaded in the candidate second server cluster in the indicated equipment room, and if so, selecting the candidate second server cluster with the least load among the unsupervised candidate second server clusters.
- the candidate second server cluster is selected in the candidate second server cluster group based on the load condition of each candidate second server cluster in the latest received candidate second server cluster group, including If the second server cluster that is not overloaded is not present, the unselected second server cluster that is not deployed in the equipment room indicated by the equipment information in the candidate second server cluster group is not overloaded. And the candidate second server cluster with the smallest load.
- the method further includes: switching from the currently connected second server cluster to the received second cluster switching instruction, in response to receiving the second cluster switching instruction sent by the monitoring terminal.
- the second server cluster is
- the method further includes: in response to receiving the second rate limit command including the second transmission speed sent by the monitoring terminal, acquiring the data by using the second transmission speed.
- an embodiment of the present application provides a data processing apparatus, where the apparatus includes: a determining unit configured to respond to the data transmission interruption with location information currently being acquired from a target second server cluster, based on the foregoing location And determining, in the pre-stored second location information group set, the target second location information group, wherein the target second server cluster belongs to the second server cluster group, and each of the second location information group sets The second location information included in the second location information group respectively corresponds to different second server clusters in the second server cluster group, and the second location information that matches the location information exists in the target second location information; a selecting unit, configured to select the second location information from the target second location information group as the target second location information, and the acquiring unit configured to use, in the second server cluster corresponding to the target second location information, The storage location indicated by the target second location information begins to continue to acquire data.
- each of the second location information in the second location information set corresponds to the first location information, where the first location information is a second location information stored in the second location information group.
- the determining unit includes: a determining subunit configured to determine a target correspondence relationship in a pre-stored correspondence relationship list, where each correspondence relationship in the correspondence relationship list includes second location information and a a location information, where the storage location indicated by the second location information is a storage location in the target second server cluster, where the target correspondence relationship is a correspondence between the included second location information and the location information; Configuring, in the second location information group set, the second location information group that is the same as the first location information included in the target correspondence, and the second location information group to be found. As the target second location information group.
- the location information includes an index number
- the second location information included in each correspondence in the correspondence relationship list includes a first index number
- the determining subunit includes: a first searching module, configured Searching for the correspondence between the second location information and the location information in the foregoing correspondence list; the second searching module is configured to: if not found, search for the second included in the correspondence relationship list.
- the location information includes a correspondence relationship between the target first index number
- the searched second location information includes a correspondence relationship of the target first index number as a target correspondence relationship, where the target first index number satisfies any of the following A condition is that the index number is closest to the index number and smaller than the index number, and is closest to the index number size and larger than the index number.
- the foregoing second searching module is further configured to: perform the following processing step: adding or subtracting the preset index value to the preset value to obtain an index number range, in the second position included in the correspondence relationship list
- the second location information included in the correspondence between the first index number in the information index and the second index information included in the index range includes the correspondence between the target first index number, and if found, the second included
- the location information includes the correspondence relationship of the target first index number as the target correspondence relationship; if the second location information included in the location includes the corresponding relationship of the target first index number, the current preset value is incremented. And continue to perform the above processing steps.
- the selecting unit includes: a candidate second server cluster group determining subunit, configured to obtain a candidate second server cluster group based on the target second location information group; and processing a subunit configured to be based on The load condition of each candidate second server cluster in the candidate second server cluster group is received, and the candidate second server cluster is selected in the candidate second server cluster group, and the target second location information group is selected.
- the second location information corresponding to the selected candidate second server cluster is used as the target second location information, where the load situation is received from the connected monitoring terminal.
- a part of the second server cluster in the second server cluster group is deployed in the same equipment room, and the second client has corresponding equipment room information; and the processing subunit includes: a first selection module, and the configuration Determining whether there is a candidate second server cluster that is not overloaded in the candidate second server cluster deployed in the equipment room indicated by the equipment room information in the candidate second server cluster group, and if yes, selecting the foregoing The least loaded candidate second server cluster in the overloaded candidate second server cluster.
- the processing subunit includes: a second selecting module configured to: if there is no candidate second server cluster that is not overloaded, from the candidate second server cluster group, not deployed in the A candidate second server cluster that is not overloaded and has the smallest load is selected from the candidate second server clusters in the equipment room indicated by the equipment room information.
- the apparatus further includes: a switching unit configured to switch from the currently connected second server cluster to the received second in response to receiving the second cluster switching instruction sent by the monitoring terminal The second server cluster indicated by the cluster switch instruction.
- the apparatus further includes: a first obtaining unit configured to acquire data by using the second transmission speed in response to receiving the second speed limit command including the second transmission speed sent by the monitoring terminal.
- an embodiment of the present application provides an electronic device, where the electronic device includes: one or more processors; a storage device, configured to store one or more programs; and when the one or more programs are The plurality of processors are executed such that the one or more processors described above implement the method as described in any one of the second aspects.
- the embodiment of the present application provides a computer readable storage medium, where a computer program is stored, and when the program is executed by a processor, the method described in any one of the second aspects is implemented.
- the data processing system sends the data indicated by the data sending instruction to the first server cluster in the first server cluster group by using the first client, and the first server cluster group by using the data synchronization end.
- the data in the first server cluster is synchronized to the second server cluster in the second server cluster group; the second client obtains data from the target second server cluster in the second server cluster group, and is currently
- the target second location information group is determined in the pre-stored second location information group set based on the location information, so as to be in the target second location.
- the second location information is selected as the target second location information in the information group, and the second server cluster corresponding to the target second location information continues to acquire data from the storage location indicated by the target second location information.
- the first server cluster group and the second server cluster group are effectively utilized, and the second client determines the target second location information, thereby improving the stability and data processing efficiency of the data processing system.
- the data processing method provided by the embodiment of the present application determines the target second location information group in the second location information group set based on the location information when the data transmission with the location information currently being acquired from the target second server cluster is interrupted.
- the second server cluster corresponding to the target second location information the storage location indicated by the target second location information Start to continue to get data. Therefore, the determination of the second location information of the target is effectively utilized, and the data is acquired from the beginning in the second server cluster corresponding to the target second location information, thereby improving data acquisition efficiency.
- FIG. 1 is an exemplary system architecture diagram to which the present application can be applied;
- FIG. 2 is a flow diagram of one embodiment of a data processing system in accordance with the present application.
- FIG. 3 is a schematic diagram of an application scenario of a data processing system according to the present application.
- FIG. 4 is a flow chart of still another embodiment of a data processing system in accordance with the present application.
- FIG. 5 is a flow diagram of one embodiment of a data processing method in accordance with the present application.
- FIG. 6 is a schematic structural diagram of an embodiment of a data processing apparatus according to the present application.
- FIG. 7 is a block diagram showing the structure of a computer system suitable for implementing the electronic device of the embodiment of the present application.
- FIG. 1 illustrates an exemplary system architecture 100 in which embodiments of data processing systems, methods, and apparatus of the present application may be applied.
- the system architecture 100 can include a first client 101, networks 102, 104, 106, 108, a first server cluster group 103, a data synchronization terminal 105, a second server cluster group 107, and a second client. End 109.
- the first server cluster group 103 can include first server clusters 1031, 1032, 1033, and the second server cluster group 107 can include second server clusters 1071, 1072, 1073.
- the network 102 is used to provide a medium for the communication link between the first client 101 and the first server cluster group 103.
- the network 104 is used to provide a medium for the communication link between the first server cluster group 103 and the data synchronization terminal 105.
- the network 106 is used to provide a medium for the communication link between the data synchronization end 105 and the second server cluster group 107.
- the network 108 is used to provide a medium for the communication link between the second server cluster group 107 and the second client 109.
- the networks 102, 104, 106, 108 may include various types of connections, such as wired, wireless communication links, fiber optic cables, and the like.
- the first client 101 can interact with the first server cluster 1031, 1032, 1033 in the first server cluster group 103 via the network 102 to send or receive information and the like.
- the user may send data to the first server cluster 1031, 1032, 1033, etc. in the first server cluster group 103 through the first client 101.
- the first server clusters 1031, 1032, and 1033 in the first server cluster group 103 may be, for example, a server cluster deployed with a Kafka distributed publish subscription message system, which may be used, for example, to store data sent by the first client 101. .
- the data synchronization end 105 may be a server that provides various services, such as synchronizing data in the first server clusters 1031, 1032, 1033 to the second server clusters 1071, 1072, 1073 in the second server cluster group 107.
- the second server clusters 1071, 1072, and 1073 in the second server cluster group 107 may be, for example, a server cluster deployed with a Kafka distributed publish subscription message system, which may be used, for example, to store the data sync terminal 105 from the first server.
- the second client 109 can interact with the second server clusters 1071, 1072, 1073 in the second server cluster group 107 via the network 108 to send or receive information and the like.
- the second client 109 can retrieve data from the second server clusters 1071, 1072, 1073 and perform corresponding processing when the data transfer currently being acquired is interrupted.
- Various communication client applications such as a web browser application, a shopping application, a game application, social platform software, and the like, may be installed on the first client 101 and the second client 109.
- the first client 101 and the second client 109 can be various electronic devices including, but not limited to, smartphones, tablets, laptop portable computers, desktop computers, and the like.
- the data processing method provided by the embodiment of the present application is generally performed by the second client 109. Accordingly, the data processing device is generally disposed in the second client 109.
- first client network
- first server cluster group data sync end
- FIG. 2 a timing diagram of one embodiment of a data processing system in accordance with the present application is shown.
- the data processing system of this embodiment may include: a first client, a data synchronization end, and a second client; the first client is configured to receive a data sending instruction, and send the data indicated by the data sending instruction to the first a first server cluster in the server cluster group; the data synchronization end is configured to synchronize data in the first server cluster in the first server cluster group to a second server cluster in the second server cluster group; The second client is configured to acquire data from the target second server cluster, wherein the target second server cluster belongs to the second server cluster group; and in response to the current location being acquired from the target second server cluster
- the data transmission of the information is interrupted, and based on the location information, the target second location information group is determined in the pre-stored second location information group set, wherein each second location information group in the second location information group set Each of the included second location information respectively corresponds to a different second server cluster in the second server cluster group, the target second location information There is second location information that matches the location information; second location information is selected from the target second location information group as
- the first client receives a data transmission instruction, and sends the data indicated by the data transmission instruction to the first server cluster in the first server cluster group.
- the first client (for example, the first client 101 shown in FIG. 1) can locally receive a data triggering instruction triggered by the user, and send the data indicated by the data sending instruction to the first server cluster.
- a first server cluster e.g., the first server cluster 1031, 1032, 1033 shown in FIG. 1) of the group (e.g., the first server cluster group 103 shown in FIG. 1).
- the first server cluster to which the first client is currently connected may be the first server cluster specified in advance for the first client, or may be selected by the first client in the first server cluster group.
- the first server cluster for example, uses a load balancing algorithm to select the first server cluster. This embodiment does not limit the content.
- the load balancing algorithm may include a polling method, a random method, a minimum connection number method, and the like. Since the load balancing algorithm is a well-known technology widely researched and applied at present, it will not be described here.
- each piece of data sent by the first client to the first server cluster in the first server cluster group may have a corresponding topic
- the topic may be, for example, Related topics such as food, sports or entertainment news, such as "the simple practice of braised fish", “football”, “the most popular actress in 2017” and other topics.
- step 202 the data synchronization end synchronizes data in the first server cluster in the first server cluster group to the second server cluster in the second server cluster group.
- the data synchronization end (such as the data synchronization end 105 shown in FIG. 1) may firstly set the first server cluster group in real time or periodically (for example, every half hour or one hour, etc.).
- the data in the server cluster is synchronized to a second server cluster in the second server cluster group (eg, the second server cluster group 107 shown in FIG. 1) (eg, the second server clusters 1071, 1072, 1073 shown in FIG. 1) )in.
- the data synchronization end may synchronize data in the first server cluster in the first server cluster group to each second server cluster in the second server cluster group.
- each second server cluster in the second server cluster group may have a corresponding topic
- the data synchronization end may be the first server in the first server cluster group.
- the data with the topic included in the cluster is synchronized to the second server cluster whose corresponding topic is the same as the topic corresponding to the data.
- step 203 the second client obtains data from the target second server cluster.
- the second client (such as the second client 109 shown in FIG. 1) can acquire data from the target second server cluster through a wired connection or a wireless connection.
- the target second server cluster belongs to the second server cluster group.
- the target second server cluster may be a second server cluster specified in advance for the second client, or may be a second server cluster selected by the second client in the second server cluster group, for example,
- the second server cluster selected by the load balancing algorithm is not limited in this embodiment.
- step 204 in response to the data transmission interruption with the location information currently being acquired from the target second server cluster, the second client determines the target second location in the pre-stored second location information set set based on the location information. Information group.
- the second client in response to the data transmission interruption with the location information currently being acquired from the target second server cluster, the second client may be in the pre-stored second location information group set based on the location information. Determine the target second location information group.
- the location information may be information of a storage location of the data in the target second server.
- Each piece of second location information included in each second location information group in the second location information group set may correspond to a different second server cluster in the second server cluster group.
- the second location information that matches the above location information exists in the target second location information.
- the second client may search for the second location information group including the second location information that is the same as the location information in the second location information group set, and use the found second location information group as the target.
- Two location information group when the transmission speed of the data having the location information that is being acquired is zero, or when the second client receives the transmission abnormality information for the data, etc., the second client may determine the The data transmission is interrupted, and the embodiment does not limit the content.
- each second location information group in the second location information group set may correspond to first location information, where the first location information may be stored in the second location information.
- Each piece of second location information in the group indicates information of the storage location of the data of the storage location in the first server cluster. It should be noted that the correspondence between the second location information group and the corresponding first location information may be recorded by the data synchronization end. The data synchronization end may also be used to periodically record the correspondence between the stored data in the first server cluster and the storage location in the second server cluster.
- the second client may determine the target correspondence in the pre-stored correspondence list.
- Each of the correspondences in the correspondence relationship list may include second location information and first location information, where the storage location indicated by the second location information may be a storage location in the target second server cluster, where the target corresponds to
- the relationship may be a correspondence between the included second location information and the above location information (eg, the same, etc.).
- the second client may search for the second location information group in which the corresponding first location information and the first location information included in the target correspondence information are the same in the second location information group set, and the second location information to be found is found.
- the location information group serves as the target second location information group.
- the second client may search for the same correspondence between the included second location information and the location information in the corresponding relationship list. If found, the second client may use the found correspondence as the corresponding relationship. Target correspondence. It should be noted that the correspondence between the foregoing correspondence lists may be recorded by the data synchronization end.
- each second server cluster in the second server cluster group may be configured with a partition for storing data.
- the location information may include an index number, which may be an offset of the data having the location information being acquired in a partition in the target second server cluster.
- the second location information included in each correspondence in the foregoing correspondence list may include a first index number.
- the second client may search for the included in the corresponding relationship list.
- the second location information includes a correspondence relationship of the target first index number, and the found second location information including the correspondence relationship of the target first index number is used as the target correspondence relationship.
- the target first index number may satisfy any one of the following conditions: the index size is closest to the index number and is smaller than the index number, and is closest to the index number size and larger than the index number.
- the foregoing second client may perform the following processing steps: adding or subtracting the preset index value to the preset value to obtain an index number range, and the first index number in the included second location information in the correspondence relationship list.
- the second location information included in the corresponding relationship in the range of the index number includes the correspondence between the target first index number, and if found, the second location information that is to be found includes the target first Corresponding relationship of the index number is used as the target correspondence relationship; if it is not found that the included second location information includes the correspondence relationship of the target first index number, the current preset value is incremented (for example, incremented by 1000, etc.) And continue to perform this processing step.
- the initial value of the preset value may be, for example, 1000, and the initial value of the preset value and the value added each time the incremental operation of the current preset value is performed may be set according to actual needs. This embodiment does not limit the content of this aspect.
- step 205 the second client selects the second location information from the target second location information group as the target second location information.
- the second client may select the second location information from the target second location information group as the target second location information.
- the second client may randomly select the second location information from the target second location information group as the target second location information. It should be noted that the target second location information determined by the second client is not second location information corresponding to the target second server cluster.
- step 206 in the second server cluster corresponding to the target second location information, the data is continuously acquired from the storage location indicated by the target second location information.
- the second client may use the target second location information in the second server cluster corresponding to the target second location information.
- the indicated storage location begins to continue to acquire data.
- FIG. 3 is a timing diagram of an application scenario of the data processing system according to the present embodiment.
- the first client has a pre-designated first server cluster A1
- the first server cluster A1 belongs to the first server cluster group A
- the second client has a pre-designated second server cluster B1.
- the second server cluster B1 belongs to the second server cluster group B.
- the first client may locally receive a data transmission instruction triggered by the user, and send the data indicated by the data transmission instruction to the first server cluster A1 in the first server cluster group A.
- the data synchronization end can synchronize the data in the first server cluster A1 to each of the second server clusters in the second server cluster group B.
- the second client may acquire data from the second server cluster B1 in the second server cluster group B.
- the second client in response to the data transmission interruption with the location information M currently being acquired from the second server cluster B1, the second client may be based on the location information M in the pre-stored second location information set.
- a target second location information group eg, a second location information group including the same second location information as the location information M is determined.
- the second client may randomly select the second location information as the target second location information in the target second location information group, where the second server cluster B2 corresponding to the target second location information Not the same second server cluster as the second server cluster B1. As indicated by reference numeral 306, the second client may continue to acquire data from the storage location indicated by the target second location information in the second server cluster B2.
- the system provided by the foregoing embodiment of the present application effectively utilizes the first server cluster group and the second server cluster group, and utilizes the second client to determine the target second location information, thereby improving the stability and data of the data processing system. Processing efficiency.
- FIG. 4 a timing diagram of yet another embodiment of a data processing system is shown.
- the data processing system of this embodiment may include: a first client, a data synchronization end, a monitoring end, and a second client;
- the first client is configured to receive a data sending instruction, and send the data indicated by the data sending instruction a first server cluster in the first server cluster group;
- the data synchronization end is configured to synchronize data in the first server cluster in the first server cluster group to the second in the second server cluster group a server cluster;
- the monitoring terminal is configured to monitor load status of each second server cluster in the second server cluster group, and monitor load status feedback of each second server cluster in the second server cluster group Going to the second client;
- the second client is configured to acquire data from the target second server cluster, wherein the target second server cluster belongs to the second server cluster group; in response to the current second from the target If the data transmission with the location information that the server cluster is acquiring is interrupted, the target is determined in the pre-stored second location information group set based on the location information.
- each piece of second location information included in each second location information group in the second location information group set respectively corresponds to a different second server cluster in the second server cluster group
- Corresponding second location information is used as target second location information; in the second server cluster corresponding to the target second location information, data is continuously acquired from the storage location indicated by the target second location information.
- step 401 the first client receives a data transmission instruction, and sends the data indicated by the data transmission instruction to the first server cluster in the first server cluster group.
- step 402 the data synchronization end synchronizes data in the first server cluster in the first server cluster group to the second server cluster in the second server cluster group.
- step 401 and 402 may be referred to the related descriptions in step 201 and step 202 in the embodiment shown in FIG. 2, and details are not described herein again.
- step 403 the monitoring terminal monitors the load status of each second server cluster in the second server cluster group, and feeds back the monitored load status to the second client.
- the monitoring terminal may monitor the load status of each second server cluster in the second server cluster group in real time or periodically (for example, every 10 minutes or half an hour, etc.), and feedback the load condition. Go to the second client above.
- a monitoring tool may be pre-deployed on the monitoring terminal, and the monitoring tool may collect monitoring data in each second server cluster in the second server cluster group based on preset monitoring indicators, and the monitoring tool may also collect the monitoring data.
- the monitoring data is analyzed to calculate a value for characterizing the load condition of each of the second server clusters in the second server cluster group.
- the monitoring terminal can feed back the value to the second client.
- the foregoing preset monitoring indicators may include, for example, a disk usage rate, a memory usage rate, a CPU (Central Processing Unit) occupancy rate, a bandwidth utilization rate, and the like.
- step 404 the second client obtains data from the target second server cluster.
- step 405 in response to the data transmission interruption with the location information currently being acquired from the target second server cluster, the second client determines the target second location in the pre-stored second location information set set based on the location information. Information group.
- step 404 and 405 can be referred to the related descriptions in step 203 and step 204 in the embodiment shown in FIG. 2, and details are not described herein again.
- step 406 the second client obtains the candidate second server cluster group based on the target second location information group.
- each piece of second location information included in each second location information group in the second location information group set corresponds to a different second server cluster in the second server cluster group, Therefore, the second client may obtain the candidate second server cluster group based on the determined target second location information group. It should be noted that each candidate second server cluster in the candidate second server cluster group is the second server cluster in the second server cluster group.
- the second client selects the candidate second server cluster in the candidate second server cluster group based on the load condition of each candidate second server cluster in the newly received candidate second server cluster group,
- the second location information corresponding to the selected candidate second server cluster in the target second location information group is used as the target second location information.
- the second client may be based on the newly received candidate second server cluster in the candidate second server cluster group.
- the candidate second server cluster is selected in the candidate second server cluster group, and the second location information corresponding to the selected candidate second server cluster in the target location information group is used as the target second location information.
- the foregoing second client may select the candidate second server cluster with the smallest load from the candidate second server cluster group, for example, respectively, to represent each candidate second server cluster in the candidate second server cluster group.
- the values of the load conditions are compared in pairs to select the candidate second server cluster with the smallest load.
- a part of the second server clusters in the second server cluster group may be deployed in the same equipment room, and the second client may have corresponding equipment room information.
- the second client may determine whether there is a candidate second server cluster that is not overloaded in the candidate second server cluster deployed in the equipment room indicated by the equipment information in the candidate second server cluster group, if yes, Then, the second client may select the candidate second server cluster with the least load among the candidate second server clusters that are not overloaded. If the second server cluster that is not overloaded is not present, the second client may be a candidate second server cluster that is not deployed in the equipment room indicated by the equipment information in the candidate second server cluster group. Select a candidate second server cluster that is not overloaded and has the least load.
- step 408 the second client continues to acquire data from the storage location indicated by the target second location information in the second server cluster corresponding to the target second location information.
- the second client may start from the storage location indicated by the target second location information in the second server cluster corresponding to the target second location information. Continue to get the data.
- the monitoring terminal may monitor each of the first server cluster groups when monitoring the load status of each second server cluster in the second server cluster group.
- the load condition of the first server cluster group, and the load condition is fed back to the first client.
- the first client when the data transmission sent by the first client to the first server cluster in the first server cluster group is interrupted, the first client may receive the latest update.
- the first server cluster In the load situation of each first server cluster in the first server cluster group, the first server cluster is selected as the target first server cluster in the first server cluster group, and the first client may be the target server A server cluster resends the data of the transmission interruption.
- the target first server cluster is usually not the same cluster as the first server cluster connected when the data transmission is interrupted.
- some of the first server clusters in the first server cluster group may be deployed in the same equipment room, and the first client may have corresponding first equipment room information.
- the method for selecting the target first server cluster may refer to the method for selecting the candidate second server cluster described in step 407 in the embodiment shown in FIG. 4, and details are not described herein again.
- a part of the first server cluster in the first server cluster group and a part of the second server cluster in the second server cluster group may be deployed in the same equipment room.
- the monitoring terminal may be further configured to: when monitoring the first server cluster overload in the first server cluster group, currently connected to the first server cluster At least one first client of the first client group sends a first cluster switching instruction; and/or to the second server cluster when monitoring the second server cluster overload in the second server cluster group At least one second client of the currently connected second client group sends a second cluster switching instruction.
- the first server cluster indicated by the first cluster switching instruction may be the first server cluster with the smallest load in the first server cluster group; the second server cluster indicated by the first cluster switching instruction may be It is the second server cluster with the smallest load in the above second server cluster group.
- the first client may be further configured to: switch from the currently connected first server cluster to the first cluster switching instruction sent by the monitoring terminal.
- the first server cluster indicated by the received first cluster switching instruction In this way, the data transmission efficiency of the first client can be improved.
- the foregoing second client may be further configured to: switch from the currently connected second server cluster to the second cluster switching instruction sent by the monitoring terminal.
- the second server cluster indicated by the received second cluster switching instruction In this way, the data acquisition efficiency of the second client can be improved.
- the monitoring terminal may be further configured to: when monitoring, that the bandwidth utilization of the first server cluster in the first server cluster group exceeds a threshold, to the first server At least one first client of the first client group to which the cluster is currently connected transmits a first rate limit command including a first transmission speed; and/or monitors a second server cluster in the second server cluster group When the bandwidth utilization exceeds the foregoing threshold, the second rate limit command including the second transmission speed is sent to at least one of the second client groups currently connected to the second server cluster.
- the monitoring terminal may be in the first client group to which the first server cluster is currently connected.
- Each of the first clients transmits a first rate limit command including a first transmission speed.
- the monitoring terminal monitors that the bandwidth utilization of the second server cluster in the second server cluster group exceeds the threshold, the monitoring terminal sends each second client in the second client group currently connected to the second server cluster.
- a second rate limit command including a second transmission speed is transmitted.
- the first client may be further configured to: in response to receiving the first speed limit command sent by the monitoring terminal, adopt the received first speed limit command
- the first transmission speed is included to transmit data. In this way, the bandwidth pressure of the first server cluster to which the first client is currently connected can be alleviated.
- the second client may be further configured to: in response to receiving the second speed limit command sent by the monitoring terminal, adopt the received second speed limit command The second transmission speed is included to acquire data. In this way, the bandwidth pressure of the second server cluster to which the second client is currently connected can be alleviated.
- the data processing system in this embodiment highlights the step of determining the target second location information as compared to the embodiment corresponding to FIG. Therefore, the solution described in this embodiment may enable the second client to continue to acquire data from the storage location indicated by the target second location information in the second server cluster with a smaller load corresponding to the target second location information. Thereby, the stability of the data processing system can be further improved, and the data acquisition efficiency of the second client can be improved.
- the process 500 of the data processing method includes the following steps:
- Step 501 In response to the data transmission interruption with the location information currently being acquired from the target second server cluster, determining the target second location information group in the pre-stored second location information group set based on the location information.
- the electronic device (for example, the second client 109 shown in FIG. 1) on which the data processing method runs may acquire data from the target second server cluster through a wired connection or a wireless connection. If the data transmission with the location information currently being acquired from the target second server cluster is interrupted, the electronic device may determine the target second location information group in the pre-stored second location information group set based on the location information.
- the target second server cluster belongs to the second server cluster group.
- the target second server cluster may be a second server cluster specified in advance for the electronic device, or may be a second server cluster selected by the electronic device in the second server cluster group, for example, using a load balancing algorithm.
- the second server cluster this embodiment does not limit the content of this aspect.
- the location information may be information of a storage location of the data having the location information that is being acquired in the target second server cluster.
- Each piece of second location information included in each location information group in the second location information group set may correspond to a different second server cluster in the second server cluster group.
- the second location information that matches the above location information exists in the target second location information.
- the second client may search for the second location information group including the second location information that is the same as the location information in the second location information group set, and use the found second location information group as the target. Two location information group.
- the second client may determine the data.
- the transmission is interrupted, and the embodiment does not limit the content in this aspect.
- the data in each second server cluster in the second server cluster group may be that the data synchronization end synchronizes from the first server cluster in the first server cluster group to the second server cluster.
- the data in each of the first server clusters in the first server cluster group may be uploaded by the first client connected to the first server cluster.
- Step 502 Select second location information from the target second location information group as the target second location information.
- the method for selecting the second location information from the target second location information group may refer to the related description in step 205 in the embodiment shown in FIG. 2, or refer to step 406 in the embodiment shown in FIG. And the related description in step 407, and details are not described herein again.
- Step 503 In the second server cluster corresponding to the target second location information, continue to acquire data from the storage location indicated by the target second location information.
- the electronic device may continue to acquire from the storage location indicated by the target second location information in the second server cluster corresponding to the target second location information. data.
- the method provided by the foregoing embodiment of the present application effectively utilizes the determination of the target second location information, avoids obtaining data from the beginning in the second server cluster corresponding to the target second location information, and improves data acquisition efficiency.
- the present application provides an embodiment of a data processing apparatus, and the apparatus embodiment corresponds to the method embodiment shown in FIG. Used in a variety of electronic devices.
- the data processing apparatus 600 shown in this embodiment includes a determining unit 601, a selecting unit 602, and an obtaining unit 603.
- the determining unit 601 is configured to determine, in response to the data transmission interruption with the location information currently being acquired from the target second server cluster, determining the target second location in the pre-stored second location information group set based on the location information.
- the information group wherein the target second server cluster belongs to the second server cluster group, and each second location information included in each second location information group in the second location information group set corresponds to the second Different second server clusters in the server cluster group, the second location information matching the location information exists in the target second location information;
- the selecting unit 602 is configured to select the second location from the target second location information group The location information is used as the target second location information; and the obtaining unit 603 is configured to continue to acquire data from the storage location indicated by the target second location information in the second server cluster corresponding to the target second location information.
- step 501 the specific processing of the determining unit 601, the selecting unit 602, and the obtaining unit 603 in the data processing apparatus 600 and the technical effects thereof may be referred to step 501, step 502 and corresponding steps in the corresponding embodiment of FIG. 5, respectively.
- step 503 The related description of step 503 will not be repeated here.
- each second location information in the second location information group set may correspond to the first location information, where the first location information may be stored in the second location information group.
- the determining unit 601 may include: determining a subunit (not shown) configured to determine a target correspondence relationship in a pre-stored correspondence relationship list, where Each of the correspondences in the correspondence list includes second location information and first location information, where the storage location indicated by the second location information is a storage location in the target second server cluster, and the target correspondence is included Corresponding relationship between the second location information and the location information; a search subunit (not shown) configured to search for the corresponding first location information and the target correspondence relationship in the second location information group set The second location information group including the first location information is included, and the found second location information group is used as the target second location information group.
- the location information may include an index number, where the second location information included in each correspondence in the correspondence relationship list may include a first index number; and the determining subunit
- the first search module (not shown) is configured to search for the correspondence between the second location information included in the correspondence relationship list and the location information, and the second search module (not shown) And, if not found, searching for the second location information included in the correspondence relationship list, including the correspondence relationship of the target first index number, and including the found second location information including the foregoing Corresponding relationship of the target first index number is used as the target correspondence relationship, wherein the target first index number satisfies any one of the following conditions: the closest to the index number size and smaller than the index number, and the closest to the index number size and greater than the above The index number.
- the second searching module may be further configured to: perform the following processing step: adding or subtracting the preset index value to obtain an index number range, where the corresponding relationship list is The second location information included in the first index number of the included second location information in the correspondence between the index number ranges includes the correspondence relationship between the target first index number, and if found, the The found second location information includes the correspondence relationship of the target first index number as the target correspondence relationship; if the second location information included in the search includes the correspondence relationship of the target first index number, the current relationship is The above preset value is incremented and the above processing steps are continued.
- the selecting unit 602 may include: a candidate second server cluster group determining subunit (not shown) configured to be obtained based on the target second location information group. a candidate second server cluster group; a processing subunit (not shown) configured to be based on a load condition of each candidate second server cluster in the latest received candidate second server cluster group, in the candidate Selecting a second server cluster in the second server cluster group, and using the second location information corresponding to the selected candidate second server cluster in the target second location information group as the target second location information, where The load condition is received from the connected monitoring terminal.
- some of the second server clusters in the second server cluster group may be deployed in the same equipment room, and the second client may have corresponding equipment room information; and the foregoing processing device.
- the unit may include: a first selection module (not shown) configured to determine whether the candidate second server cluster group in the candidate second server cluster group is deployed in the candidate second server cluster in the equipment room indicated by the equipment room information The candidate second server cluster that is not overloaded, if present, selects the candidate second server cluster with the least load among the candidate second server clusters that are not overloaded.
- the processing subunit may include: a second selection module (not shown) configured to: if the candidate second server cluster that is not overloaded is not present, Selecting a candidate second server cluster that is not overloaded and has the smallest load from the candidate second server clusters in the candidate second server cluster group that are not deployed in the equipment room indicated by the equipment room information.
- a second selection module (not shown) configured to: if the candidate second server cluster that is not overloaded is not present, Selecting a candidate second server cluster that is not overloaded and has the smallest load from the candidate second server clusters in the candidate second server cluster group that are not deployed in the equipment room indicated by the equipment room information.
- the apparatus 600 may further include: a switching unit (not shown) configured to respond to receiving the second cluster switching instruction sent by the monitoring terminal, The currently connected second server cluster switches to the second server cluster indicated by the received second cluster switching instruction.
- a switching unit (not shown) configured to respond to receiving the second cluster switching instruction sent by the monitoring terminal, The currently connected second server cluster switches to the second server cluster indicated by the received second cluster switching instruction.
- the apparatus 600 may further include: a first acquiring unit (not shown) configured to receive, according to the receiving, the second transmission speed that is sent by the monitoring terminal.
- the second speed limit command acquires data using the second transmission speed.
- the device provided in the foregoing embodiment of the present application effectively utilizes the determination of the target second location information, avoids obtaining data from the beginning in the second server cluster corresponding to the target second location information, and improves data acquisition efficiency.
- FIG. 7 a block diagram of a computer system 700 suitable for use in implementing the electronic device of the embodiments of the present application is shown.
- the electronic device shown in Fig. 7 is merely an example and should not impose any limitation on the function and scope of use of the embodiments of the present application.
- computer system 700 includes a central processing unit (CPU) 701 that can be loaded into a program in random access memory (RAM) 703 according to a program stored in read only memory (ROM) 702 or from storage portion 708. And perform various appropriate actions and processes.
- RAM random access memory
- ROM read only memory
- RAM 703 various programs and data required for the operation of the system 700 are also stored.
- the CPU 701, the ROM 702, and the RAM 703 are connected to each other through a bus 704.
- An input/output (I/O) interface 705 is also coupled to bus 704.
- the following components are connected to the I/O interface 705: an input portion 706 including a keyboard, a mouse, etc.; an output portion 707 including a cathode ray tube (CRT), a liquid crystal display (LCD), and the like, and a speaker; a storage portion 708 including a hard disk or the like And a communication portion 709 including a network interface card such as a LAN card, a modem, or the like.
- the communication section 709 performs communication processing via a network such as the Internet.
- Driver 710 is also connected to I/O interface 705 as needed.
- a removable medium 711 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory or the like, is mounted on the drive 710 as needed so that a computer program read therefrom is installed into the storage portion 708 as needed.
- an embodiment of the present disclosure includes a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for executing the method illustrated in the flowchart.
- the computer program can be downloaded and installed from the network via communication portion 709, and/or installed from removable media 711.
- the central processing unit (CPU) 701 the above-described functions defined in the system of the present application are executed.
- the computer readable medium illustrated in the present application may be a computer readable signal medium or a computer readable storage medium or any combination of the two.
- the computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the above. More specific examples of computer readable storage media may include, but are not limited to, electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), erasable Programmable read only memory (EPROM or flash memory), optical fiber, portable compact disk read only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the foregoing.
- a computer readable storage medium may be any tangible medium that can contain or store a program, which can be used by or in connection with an instruction execution system, apparatus or device.
- a computer readable signal medium may include a data signal that is propagated in the baseband or as part of a carrier, carrying computer readable program code. Such propagated data signals can take a variety of forms including, but not limited to, electromagnetic signals, optical signals, or any suitable combination of the foregoing.
- the computer readable signal medium can also be any computer readable medium other than a computer readable storage medium, which can transmit, propagate, or transport a program for use by or in connection with the instruction execution system, apparatus, or device.
- Program code embodied on a computer readable medium can be transmitted by any suitable medium, including but not limited to wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
- each block of the flowchart or block diagrams can represent a module, a program segment, or a portion of code that includes one or more Executable instructions.
- the functions noted in the blocks may also occur in a different order than that illustrated in the drawings. For example, two successively represented blocks may in fact be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending upon the functionality involved.
- each block of the block diagrams or flowcharts, and combinations of blocks in the block diagrams or flowcharts can be implemented by a dedicated hardware-based system that performs the specified function or operation, or can be used A combination of dedicated hardware and computer instructions is implemented.
- the units involved in the embodiments of the present application may be implemented by software or by hardware.
- the described unit may also be provided in the processor, for example, as a processor including a determining unit, a selecting unit, and an obtaining unit.
- the names of the units do not constitute a limitation on the unit itself in some cases.
- the determining unit may also be described as “determining the target second in the pre-stored second set of position information sets based on the location information.
- the unit of the location information group may be described as “determining the target second in the pre-stored second set of position information sets based on the location information.
- the present application further provides a computer readable medium, which may be included in an electronic device described in the above embodiments, or may be separately present without being assembled into the electronic device.
- the computer readable medium carries one or more programs, and when the one or more programs are executed by the electronic device, the electronic device includes: responsive to the location information currently being acquired from the target second server cluster If the data transmission is interrupted, the target second location information group is determined in the pre-stored second location information group set based on the foregoing location information, wherein the target second server cluster belongs to the second server cluster group, and the second location Each piece of second location information included in each second location information group in the information group set respectively corresponds to a different second server cluster in the second server cluster group, and the target second location information exists in the location and the location Information matching second location information; selecting second location information from the target second location information group as target second location information; in the second server cluster corresponding to the target second location information, from the target second The storage location indicated by the location information begins to continue to acquire data.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请实施例公开了数据处理系统、方法和装置,该系统的一具体实施方式包括:该系统包括第一客户端、数据同步端和第二客户端;第一客户端用于将数据发送指令所指示的数据发送至第一服务器集群组中的第一服务器集群;数据同步端用于将第一服务器集群中的数据同步至第二服务器集群组中的第二服务器集群;第二客户端用于:从目标第二服务器集群获取数据;在当前从目标第二服务器集群正在获取的具有位置信息的数据传输中断时基于位置信息在第二位置信息组集合中确定目标第二位置信息组;在目标第二位置信息组中确定目标第二位置信息;从目标第二位置信息所指示的存储位置开始继续获取数据。该实施方式提高了数据处理系统的稳定性和数据处理效率。
Description
本专利申请要求于2017年7月28日提交的、申请号为201710628061.6、申请人为北京京东尚科信息技术有限公司和北京京东世纪贸易有限公司、发明名称为“数据处理系统、方法和装置”的中国专利申请的优先权,该申请的全文以引用的方式并入本申请中。
本申请涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及数据处理系统、方法和装置。
现有的数据处理系统(例如Kafka分布式发布订阅消息系统等)通常采用单服务器集群提供数据存储服务,例如生产者将所生产的数据通过生产者客户端发送至该服务器集群,消费者通过消费者客户端从该服务器集群获取数据。因此,现有的数据处理系统存在稳定性差和数据处理效率低的问题。
发明内容
本申请实施例的目的在于提出一种改进的数据处理系统、方法和装置,来解决以上背景技术部分提到的技术问题。
第一方面,本申请实施例提供了一种数据处理系统,该系统包括:第一客户端、数据同步端和第二客户端;上述第一客户端,用于接收数据发送指令,将上述数据发送指令所指示的数据发送至第一服务器集群组中的第一服务器集群;上述数据同步端,用于将上述第一服务器集群组中的第一服务器集群中的数据同步至第二服务器集群组中的第二服务器集群;上述第二客户端,用于从目标第二服务器集群获取数据,其中,上述目标第二服务器集群归属于上述第二服务器集群组; 响应于当前从上述目标第二服务器集群正在获取的具有位置信息的数据传输中断,则基于上述位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组,其中,上述第二位置信息组集合中的每个第二位置信息组所包括的各条第二位置信息分别对应上述第二服务器集群组中的不同的第二服务器集群,上述目标第二位置信息组中存在与上述位置信息匹配的第二位置信息;从上述目标第二位置信息组中选取第二位置信息作为目标第二位置信息;在上述目标第二位置信息所对应的第二服务器集群中,从上述目标第二位置信息所指示的存储位置开始继续获取数据。
在一些实施例中,上述第二位置信息组集合中的每个第二位置信息对应第一位置信息,上述第一位置信息是存储在该第二位置信息组中的各条第二位置信息分别指示的存储位置的数据在所在的第一服务器集群中的存储位置的信息。
在一些实施例中,上述第二客户端还用于:在预先存储的对应关系列表中确定目标对应关系,其中,上述对应关系列表中的每条对应关系包括第二位置信息和第一位置信息,该第二位置信息所指示的存储位置是上述目标第二服务器集群中的存储位置,上述目标对应关系是所包括的第二位置信息与上述位置信息匹配的对应关系;在上述第二位置信息组集合中查找所对应的第一位置信息与上述目标对应关系所包括的第一位置信息相同的第二位置信息组,将查找到的第二位置信息组作为目标第二位置信息组。
在一些实施例中,上述位置信息包括索引号,上述对应关系列表中的每条对应关系所包括的第二位置信息包括第一索引号;以及上述第二客户端还用于:在上述对应关系列表中查找所包括的第二位置信息与上述位置信息相同的对应关系;若未查找到,则在上述对应关系列表中查找所包括的第二位置信息包括目标第一索引号的对应关系,并将查找到的所包括的第二位置信息包括上述目标第一索引号的对应关系作为目标对应关系,其中,上述目标第一索引号满足以下任意一个条件:与上述索引号大小最接近且小于上述索引号、与上述索引号大小最接近且大于上述索引号。
在一些实施例中,上述第二客户端还用于:执行以下处理步骤:将上述索引号加减预置值以得到索引号范围,在上述对应关系列表中的、所包括的第二位置信息中的第一索引号处于上述索引号范围内的对应关系中查找所包括的第二位置信息包括上述目标第一索引号的对应关系,若查找到,则将查找到的所包括的第二位置信息包括上述目标第一索引号的对应关系作为目标对应关系;若未查找到所包括的第二位置信息包括上述目标第一索引号的对应关系,则对当前的上述预置值进行递增操作,并继续执行上述处理步骤。
在一些实施例中,上述系统还包括监控端,该监控端用于:监控上述第一服务器集群组中的各个第一服务器集群的负载情况,并将监控到的上述第一服务器集群组中的各个第一服务器集群的负载情况反馈到上述第一客户端;和/或监控上述第二服务器集群组中的各个第二服务器集群的负载情况,并将监控到的上述第二服务器集群组中的各个第二服务器集群的负载情况反馈到上述第二客户端。
在一些实施例中,上述第二客户端还用于:基于上述目标第二位置信息组得到候选第二服务器集群组;基于最新接收到的上述候选第二服务器集群组中的各个候选第二服务器集群的负载情况,在上述候选第二服务器集群组中选取候选第二服务器集群,将上述目标第二位置信息组中的、与所选取的候选第二服务器集群对应的第二位置信息作为目标第二位置信息。
在一些实施例中,上述第二服务器集群组中的部分第二服务器集群部署在同一机房中,上述第二客户端具有对应的机房信息;以及上述第二客户端还用于:确定上述候选第二服务器集群组中的、部署在上述机房信息所指示的机房中的候选第二服务器集群中是否存在未超负载的候选第二服务器集群,若存在,则选取上述未超负载的候选第二服务器集群中的负载最小的候选第二服务器集群。
在一些实施例中,上述第二客户端还用于:若不存在上述未超负载的候选第二服务器集群,则从上述候选第二服务器集群组中的、未部署在上述机房信息所指示的机房中的候选第二服务器集群中选取未超负载且负载最小的候选第二服务器集群。
在一些实施例中,上述监控端还用于:在监控到上述第一服务器集群组中的第一服务器集群超负载时,向该第一服务器集群当前所连接的第一客户端组中的至少一个第一客户端发送第一集群切换指令;和/或在监控到上述第二服务器集群组中的第二服务器集群超负载时,向该第二服务器集群当前所连接的第二客户端组中的至少一个第二客户端发送第二集群切换指令。
在一些实施例中,上述第一客户端还用于:响应于接收到上述监控端发送的第一集群切换指令,则从当前所连接的第一服务器集群切换到所接收到的第一集群切换指令所指示的第一服务器集群。
在一些实施例中,上述第二客户端还用于:响应于接收到上述监控端发送的第二集群切换指令,则从当前所连接的第二服务器集群切换到所接收到的第二集群切换指令所指示的第二服务器集群。
在一些实施例中,上述监控端还用于:在监控到上述第一服务器集群组中的第一服务器集群的带宽利用率超出阈值时,向该第一服务器集群当前所连接的第一客户端组中的至少一个第一客户端发送包括第一传输速度的第一限速指令;和/或在监控到上述第二服务器集群组中的第二服务器集群的带宽利用率超出上述阈值时,向该第二服务器集群当前所连接的第二客户端组中的至少一个第二客户端发送包括第二传输速度的第二限速指令。
在一些实施例中,上述第一客户端还用于:响应于接收到上述监控端发送的第一限速指令,则采用所接收到的第一限速指令所包括的第一传输速度发送数据。
在一些实施例中,上述第二客户端还用于:响应于接收到上述监控端发送的第二限速指令,则采用所接收到的第二限速指令所包括的第二传输速度获取数据。
第二方面,本申请实施例提供了一种数据处理方法,该方法包括:响应于当前从目标第二服务器集群正在获取的具有位置信息的数据传输中断,则基于上述位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组,其中,上述目标第二服务器集群归属于第二服务器集群组,上述第二位置信息组集合中的每个第二位置信息组 所包括的各条第二位置信息分别对应上述第二服务器集群组中的不同的第二服务器集群,上述目标第二位置信息中存在与上述位置信息匹配的第二位置信息;从上述目标第二位置信息组中选取第二位置信息作为目标第二位置信息;在上述目标第二位置信息所对应的第二服务器集群中,从上述目标第二位置信息所指示的存储位置开始继续获取数据。
在一些实施例中,上述第二位置信息组集合中的每个第二位置信息对应第一位置信息,上述第一位置信息是存储在该第二位置信息组中的各条第二位置信息分别指示的存储位置的数据在所在的第一服务器集群中的存储位置的信息。
在一些实施例中,上述基于上述位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组,包括:在预先存储的对应关系列表中确定目标对应关系,其中,上述对应关系列表中的每条对应关系包括第二位置信息和第一位置信息,该第二位置信息所指示的存储位置是上述目标第二服务器集群中的存储位置,上述目标对应关系是所包括的第二位置信息与上述位置信息匹配的对应关系;在上述第二位置信息组集合中查找所对应的第一位置信息与上述目标对应关系所包括的第一位置信息相同的第二位置信息组,将查找到的第二位置信息组作为目标第二位置信息组。
在一些实施例中,上述位置信息包括索引号,上述对应关系列表中的每条对应关系所包括的第二位置信息包括第一索引号;以及上述在预先存储的对应关系列表中确定目标对应关系,包括:在上述对应关系列表中查找所包括的第二位置信息与上述位置信息相同的对应关系;若未查找到,则在上述对应关系列表中查找所包括的第二位置信息包括目标第一索引号的对应关系,并将查找到的所包括的第二位置信息包括上述目标第一索引号的对应关系作为目标对应关系,其中,上述目标第一索引号满足以下任意一个条件:与上述索引号大小最接近且小于上述索引号、与上述索引号大小最接近且大于上述索引号。
在一些实施例中,上述在上述对应关系列表中查找所包括的第二位置信息包括目标第一索引号的对应关系,包括:执行以下处理步骤: 将上述索引号加减预置值以得到索引号范围,在上述对应关系列表中的、所包括的第二位置信息中的第一索引号处于上述索引号范围内的对应关系中查找所包括的第二位置信息包括上述目标第一索引号的对应关系,若查找到,则将查找到的所包括的第二位置信息包括上述目标第一索引号的对应关系作为目标对应关系;若未查找到所包括的第二位置信息包括上述目标第一索引号的对应关系,则对当前的上述预置值进行递增操作,并继续执行上述处理步骤。
在一些实施例中,上述从上述目标第二位置信息组中选取第二位置信息作为目标第二位置信息,包括:基于上述目标第二位置信息组得到候选第二服务器集群组;基于最新接收到的上述候选第二服务器集群组中的各个候选第二服务器集群的负载情况,在上述候选第二服务器集群组中选取候选第二服务器集群,将上述目标第二位置信息组中的、与所选取的候选第二服务器集群对应的第二位置信息作为目标第二位置信息,其中,该负载情况是从所连接的监控端接收的。
在一些实施例中,上述第二服务器集群组中的部分第二服务器集群部署在同一机房中,上述第二客户端具有对应的机房信息;以及上述基于最新接收到的上述候选第二服务器集群组中的各个候选第二服务器集群的负载情况,在上述候选第二服务器集群组中选取候选第二服务器集群,包括:确定上述候选第二服务器集群组中的、部署在上述机房信息所指示的机房中的候选第二服务器集群中是否存在未超负载的候选第二服务器集群,若存在,则选取上述未超负载的候选第二服务器集群中的负载最小的候选第二服务器集群。
在一些实施例中,上述基于最新接收到的上述候选第二服务器集群组中的各个候选第二服务器集群的负载情况,在上述候选第二服务器集群组中选取候选第二服务器集群,包括:若不存在上述未超负载的候选第二服务器集群,则从上述候选第二服务器集群组中的、未部署在上述机房信息所指示的机房中的候选第二服务器集群中选取未超负载且负载最小的候选第二服务器集群。
在一些实施例中,上述方法还包括:响应于接收到上述监控端发送的第二集群切换指令,则从当前所连接的第二服务器集群切换到所 接收到的第二集群切换指令所指示的第二服务器集群。
在一些实施例中,上述方法还包括:响应于接收到上述监控端发送的包括第二传输速度的第二限速指令,则采用该第二传输速度获取数据。
第三方面,本申请实施例提供了一种数据处理装置,该装置包括:确定单元,配置用于响应于当前从目标第二服务器集群正在获取的具有位置信息的数据传输中断,则基于上述位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组,其中,上述目标第二服务器集群归属于第二服务器集群组,上述第二位置信息组集合中的每个第二位置信息组所包括的各条第二位置信息分别对应上述第二服务器集群组中的不同的第二服务器集群,上述目标第二位置信息中存在与上述位置信息匹配的第二位置信息;选取单元,配置用于从上述目标第二位置信息组中选取第二位置信息作为目标第二位置信息;获取单元,配置用于在上述目标第二位置信息所对应的第二服务器集群中,从上述目标第二位置信息所指示的存储位置开始继续获取数据。
在一些实施例中,上述第二位置信息组集合中的每个第二位置信息对应第一位置信息,上述第一位置信息是存储在该第二位置信息组中的各条第二位置信息分别指示的存储位置的数据在所在的第一服务器集群中的存储位置的信息。
在一些实施例中,上述确定单元包括:确定子单元,配置用于在预先存储的对应关系列表中确定目标对应关系,其中,上述对应关系列表中的每条对应关系包括第二位置信息和第一位置信息,该第二位置信息所指示的存储位置是上述目标第二服务器集群中的存储位置,上述目标对应关系是所包括的第二位置信息与上述位置信息匹配的对应关系;查找子单元,配置用于在上述第二位置信息组集合中查找所对应的第一位置信息与上述目标对应关系所包括的第一位置信息相同的第二位置信息组,将查找到的第二位置信息组作为目标第二位置信息组。
在一些实施例中,上述位置信息包括索引号,上述对应关系列表中的每条对应关系所包括的第二位置信息包括第一索引号;以及上述 确定子单元包括:第一查找模块,配置用于在上述对应关系列表中查找所包括的第二位置信息与上述位置信息相同的对应关系;第二查找模块,配置用于若未查找到,则在上述对应关系列表中查找所包括的第二位置信息包括目标第一索引号的对应关系,并将查找到的所包括的第二位置信息包括上述目标第一索引号的对应关系作为目标对应关系,其中,上述目标第一索引号满足以下任意一个条件:与上述索引号大小最接近且小于上述索引号、与上述索引号大小最接近且大于上述索引号。
在一些实施例中,上述第二查找模块进一步配置用于:执行以下处理步骤:将上述索引号加减预置值以得到索引号范围,在上述对应关系列表中的、所包括的第二位置信息中的第一索引号处于上述索引号范围内的对应关系中查找所包括的第二位置信息包括上述目标第一索引号的对应关系,若查找到,则将查找到的所包括的第二位置信息包括上述目标第一索引号的对应关系作为目标对应关系;若未查找到所包括的第二位置信息包括上述目标第一索引号的对应关系,则对当前的上述预置值进行递增操作,并继续执行上述处理步骤。
在一些实施例中,上述选取单元包括:候选第二服务器集群组确定子单元,配置用于基于上述目标第二位置信息组得到候选第二服务器集群组;处理子单元,配置用于基于最新接收到的上述候选第二服务器集群组中的各个候选第二服务器集群的负载情况,在上述候选第二服务器集群组中选取候选第二服务器集群,将上述目标第二位置信息组中的、与所选取的候选第二服务器集群对应的第二位置信息作为目标第二位置信息,其中,该负载情况是从所连接的监控端接收的。
在一些实施例中,上述第二服务器集群组中的部分第二服务器集群部署在同一机房中,上述第二客户端具有对应的机房信息;以及上述处理子单元包括:第一选取模块,配置用于确定上述候选第二服务器集群组中的、部署在上述机房信息所指示的机房中的候选第二服务器集群中是否存在未超负载的候选第二服务器集群,若存在,则选取上述未超负载的候选第二服务器集群中的负载最小的候选第二服务器集群。
在一些实施例中,上述处理子单元包括:第二选取模块,配置用于若不存在上述未超负载的候选第二服务器集群,则从上述候选第二服务器集群组中的、未部署在上述机房信息所指示的机房中的候选第二服务器集群中选取未超负载且负载最小的候选第二服务器集群。
在一些实施例中,上述装置还包括:切换单元,配置用于响应于接收到上述监控端发送的第二集群切换指令,则从当前所连接的第二服务器集群切换到所接收到的第二集群切换指令所指示的第二服务器集群。
在一些实施例中,上述装置还包括:第一获取单元,配置用于响应于接收到上述监控端发送的包括第二传输速度的第二限速指令,则采用该第二传输速度获取数据。
第四方面,本申请实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当上述一个或多个程序被上述一个或多个处理器执行,使得上述一个或多个处理器实现如第二方面中任一实现方式描述的方法。
第五方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,上述程序被处理器执行时实现如第二方面中任一实现方式描述的方法。
本申请实施例提供的数据处理系统,通过第一客户端将数据发送指令所指示的数据发送至第一服务器集群组中的第一服务器集群;通过数据同步端将该第一服务器集群组中的第一服务器集群中的数据同步至第二服务器集群组中的第二服务器集群;通过第二客户端从该第二服务器集群组中的目标第二服务器集群获取数据,并在当前从该目标第二服务器集群正在获取的具有位置信息的数据传输中断时,基于该位置信息在预先存储的第二位置信息组集合中确定目标第二位置信息组,以便于在该目标第二位置信息组中选取第二位置信息作为目标第二位置信息,在该目标第二位置信息所对应的第二服务器集群中,从该目标第二位置信息所指示的存储位置开始继续获取数据。从而有效利用第一服务器集群组和第二服务器集群组,以及利用第二客户端对目标第二位置信息的确定,提高了数据处理系统的稳定性和数据处 理效率。
本申请实施例提供的数据处理方法,通过在当前从目标第二服务器集群正在获取的具有位置信息的数据传输中断时,基于该位置信息在第二位置信息组集合中确定目标第二位置信息组,以便在该目标第二位置信息中选取第二位置信息作为目标第二位置信息,在该目标第二位置信息所对应的第二服务器集群中,从该目标第二位置信息所指示的存储位置开始继续获取数据。从而有效利用对目标第二位置信息的确定,避免了在目标第二位置信息所对应的第二服务器集群中从头开始获取数据,提高了数据获取效率。
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的数据处理系统的一个实施例的流程图;
图3是根据本申请的数据处理系统的一个应用场景的示意图;
图4是根据本申请的数据处理系统的又一个实施例的流程图;
图5是根据本申请的数据处理方法的一个实施例的流程图;
图6是根据本申请的数据处理装置的一个实施例的结构示意图;
图7是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的数据处理系统、方法及装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括第一客户端101,网络102、104、106、108,第一服务器集群组103,数据同步端105,第二服务器集群组107和第二客户端109。第一服务器集群组103可以包括第一服务器集群1031、1032、1033,第二服务器集群组107可以包括第二服务器集群1071、1072、1073。网络102用以在第一客户端101和第一服务器集群组103之间提供通信链路的介质。网络104用以在第一服务器集群组103和数据同步端105之间提供通信链路的介质。网络106用以在数据同步端105和第二服务器集群组107之间提供通信链路的介质。网络108用以在第二服务器集群组107和第二客户端109之间提供通信链路的介质。网络102、104、106、108可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
第一客户端101可以通过网络102与第一服务器集群组103中的第一服务器集群1031、1032、1033交互,以发送或接收信息等。例如,用户可以通过第一客户端101将数据发送至第一服务器集群组103中的第一服务器集群1031、1032、1033等。
第一服务器集群组103中的第一服务器集群1031、1032、1033可以例如是部署有Kafka分布式发布订阅消息系统的服务器集群,该服务器集群可以例如用于储存第一客户端101发送的数据。
数据同步端105可以是提供各种服务的服务器,例如将第一服务器集群1031、1032、1033中的数据同步至第二服务器集群组107中的第二服务器集群1071、1072、1073。
第二服务器集群组107中的第二服务器集群1071、1072、1073可以例如是部署有Kafka分布式发布订阅消息系统的服务器集群,该服务器集群可以例如用于存储数据同步端105从第一服务器集群1031、1032、1033提取的数据。
第二客户端109可以通过网络108与第二服务器集群组107中的第二服务器集群1071、1072、1073交互,以发送或接收信息等。例如,第二客户端109可以从第二服务器集群1071、1072、1073获取数据, 并在当前正在获取的数据传输中断时,进行相应的处理。
第一客户端101和第二客户端109上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、游戏类应用、社交平台软件等等。第一客户端101和第二客户端109可以是各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
需要说明的是,本申请实施例所提供的数据处理方法一般由第二客户端109执行,相应地,数据处理装置一般设置于第二客户端109中。
应该理解,图1中的第一客户端、网络、第一服务器集群组、数据同步端、第二服务器集群组和第二客户端的数目仅仅是示意性的。根据实现需要,可以具有任意数目的第一客户端、网络、第一服务器集群组、数据同步端、第二服务器集群组和第二客户端。而且,第一服务器集群组和第二服务器集群组分别包括的第一服务器集群和第二服务器集群的数目可以根据实际需要进行设定。
继续参考图2,示出了根据本申请的数据处理系统的一个实施例的时序图。
本实施例的数据处理系统可以包括:第一客户端、数据同步端和第二客户端;该第一客户端,用于接收数据发送指令,将该数据发送指令所指示的数据发送至第一服务器集群组中的第一服务器集群;该数据同步端,用于将该第一服务器集群组中的第一服务器集群中的数据同步至第二服务器集群组中的第二服务器集群;该第二客户端,用于从目标第二服务器集群获取数据,其中,该目标第二服务器集群归属于该第二服务器集群组;响应于当前从该目标第二服务器集群正在获取的具有位置信息的数据传输中断,则基于该位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组,其中,该第二位置信息组集合中的每个第二位置信息组所包括的各条第二位置信息分别对应该第二服务器集群组中的不同的第二服务器集群,该目标第二位置信息组中存在与该位置信息匹配的第二位置信息;从该目标第二位置信息组中选取第二位置信息作为目标第二位置信息;在该目标 第二位置信息所对应的第二服务器集群中,从该目标第二位置信息所指示的存储位置开始继续获取数据。
如图2所示,在步骤201中,第一客户端接收数据发送指令,将该数据发送指令所指示的数据发送至第一服务器集群组中的第一服务器集群。
在本实施例中,第一客户端(例如图1所示的第一客户端101)可以本地接收用户触发的数据发送指令,并将该数据发送指令所指示的数据发送至第一服务器集群组(例如图1所示的第一服务器集群组103)中的第一服务器集群(例如图1所示的第一服务器集群1031、1032、1033)。这里,上述第一客户端当前所连接的第一服务器集群可以是预先为上述第一客户端指定的第一服务器集群,也可以是上述第一客户端在上述第一服务器集群组中选取的第一服务器集群,例如采用负载均衡算法选取第一服务器集群,本实施例不对此方面内容做任何限定。需要说明的是,负载均衡算法可以包括轮询法、随机法、最小连接数法等等。由于负载均衡算法是目前广泛研究和应用的公知技术,在此不再赘述。
在本实施例的一些可选的实现方式中,上述第一客户端发送至上述第一服务器集群组中的第一服务器集群中的每条数据可以具有对应的话题,该话题可以例如是与美食、体育或娱乐新闻等等相关的话题,例如“红烧鱼的简单做法”、“足坛健将”、“2017年最受观众喜爱的女演员”等话题。
在步骤202中,数据同步端将第一服务器集群组中的第一服务器集群中的数据同步至第二服务器集群组中的第二服务器集群。
在本实施例中,数据同步端(例如图1所示的数据同步端105)可以实时或周期性地(例如每隔半小时或一小时等等)将第一服务器集群组中的第一服务器集群中的数据同步至第二服务器集群组(例如图1所示的第二服务器集群组107)中的第二服务器集群(例如图1所示的第二服务器集群1071、1072、1073)中。作为示例,上述数据同步端可以将上述第一服务器集群组中的第一服务器集群中的数据同步至上述第二服务器集群组中的各个第二服务器集群。
在本实施例的一些可选的实现方式中,上述第二服务器集群组中的各个第二服务器集群可以具有对应的话题,上述数据同步端可以将第一服务器集群组中的第一服务器集群所包括的具有话题的数据同步至所对应的话题与该数据所对应的话题相同的第二服务器集群。
在步骤203中,第二客户端从目标第二服务器集群获取数据。
在本实施例中,第二客户端(例如图1所示的第二客户端109)可以通过有线连接方式或者无线连接方式从目标第二服务器集群获取数据。其中,该目标第二服务器集群归属于上述第二服务器集群组。另外,该目标第二服务器集群可以是预先为上述第二客户端指定的第二服务器集群,也可以是上述第二客户端在上述第二服务器集群组中选取的第二服务器集群,例如采用负载均衡算法选取的第二服务器集群,本实施例不对此方面内容做任何限定。
在步骤204中,响应于当前从目标第二服务器集群正在获取的具有位置信息的数据传输中断,则第二客户端基于位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组。
在本实施例中,响应于当前从上述目标第二服务器集群正在获取的具有位置信息的数据传输中断,则上述第二客户端可以基于该位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组。其中,该位置信息可以是该数据在上述目标第二服务器中的存储位置的信息。上述第二位置信息组集合中的每个第二位置信息组所包括的各条第二位置信息可以分别对应上述第二服务器集群组中的不同的第二服务器集群。上述目标第二位置信息中存在与上述位置信息匹配(例如相同等)的第二位置信息。作为示例,上述第二客户端可以在上述第二位置信息组集合中查找包括与上述位置信息相同的第二位置信息的第二位置信息组,并将查找到的第二位置信息组作为目标第二位置信息组。需要说明的是,当正在获取的具有上述位置信息的数据的传输速度为零时,或上述第二客户端接收到针对该数据的传输异常信息时等等,上述第二客户端均可以确定该数据传输中断,本实施例不对此方面内容做任何限定。
在本实施例的一些可选的实现方式中,上述第二位置信息组集合 中的每个第二位置信息组可以对应第一位置信息,该第一位置信息可以是存储在该第二位置信息组中的各条第二位置信息分别指示的存储位置的数据在所在的第一服务器集群中的存储位置的信息。需要说明的是,该第二位置信息组和其所对应的第一位置信息之间的对应关系可以是上述数据同步端记录的。上述数据同步端还可以用于定期地记录所同步的数据在所在的第一服务器集群和在所在的第二服务器集群中的存储位置的对应关系。
在本实施例的一些可选的实现方式中,上述第二客户端可以在预先存储的对应关系列表中确定目标对应关系。其中,该对应关系列表中的每条对应关系可以包括第二位置信息和第一位置信息,该第二位置信息所指示的存储位置可以是上述目标第二服务器集群中的存储位置,该目标对应关系可以是所包括的第二位置信息与上述位置信息匹配(例如相同等)的对应关系。上述第二客户端可以在上述第二位置信息组集合中查找所对应的第一位置信息与上述目标对应关系所包括的第一位置信息相同的第二位置信息组,将查找到的该第二位置信息组作为目标第二位置信息组。作为示例,上述第二客户端可以在上述对应关系列表中查找所包括的第二位置信息与上述位置信息相同的对应关系,若查找到,则上述第二客户端可以将查找到的对应关系作为目标对应关系。需要说明的是,上述对应关系列表中对应关系可以是上述数据同步端记录的。
在本实施例的一些可选的实现方式中,上述第二服务器集群组中的每个第二服务器集群中可以设置有用于存放数据的分区。上述位置信息可以包括索引号,该索引号可以是正在获取的具有上述位置信息的数据在上述目标第二服务器集群中的分区中的偏移量。上述对应关系列表中的每条对应关系所包括的第二位置信息可以包括第一索引号。这里,若上述第二客户端未在上述对应关系列表中查找到所包括的第二位置信息与上述位置信息相同的对应关系,则上述第二客户端可以在上述对应关系列表中查找所包括的第二位置信息包括目标第一索引号的对应关系,并将查找到的所包括的第二位置信息包括该目标第一索引号的对应关系作为目标对应关系。其中,该目标第一索引号 可以满足以下任意一个条件:与上述索引号大小最接近且小于上述索引号、与上述索引号大小最接近且大于上述索引号。
作为示例,上述第二客户端可以执行以下处理步骤:将上述索引号加减预置值以得到索引号范围,在上述对应关系列表中的、所包括的第二位置信息中的第一索引号处于上述索引号范围内的对应关系中查找所包括的第二位置信息包括上述目标第一索引号的对应关系,若查找到,则将查找到的所包括的第二位置信息包括上述目标第一索引号的对应关系作为目标对应关系;若未查找到所包括的第二位置信息包括上述目标第一索引号的对应关系,则对当前的上述预置值进行递增操作(例如递增1000等),并继续执行该处理步骤。需要说明的是,上述预置值的初始值可以例如是1000,上述预置值的初始值以及每次对当前的上述预置值进行递增操作时所增加的数值可以根据实际需要进行设定,本实施例不对此方面内容做任何限定。
在步骤205中,第二客户端从目标第二位置信息组中选取第二位置信息作为目标第二位置信息。
在本实施例中,上述第二客户端在确定上述目标第二位置信息组后,上述第二客户端可以从上述目标第二位置信息组中选取第二位置信息作为目标第二位置信息。作为示例,上述第二客户端可以从上述目标第二位置信息组中随机选取第二位置信息作为目标第二位置信息。需要说明的是,上述第二客户端所确定的上述目标第二位置信息通常不是与上述目标第二服务器集群对应的第二位置信息。
在步骤206中,在目标第二位置信息所对应的第二服务器集群中,从目标第二位置信息所指示的存储位置开始继续获取数据。
在本实施例中,上述第二客户端在确定目标第二位置信息后,上述第二客户端可以在上述目标第二位置信息所对应的第二服务器集群中,从上述目标第二位置信息所指示的存储位置开始继续获取数据。
继续参见图3,图3是根据本实施例的数据处理系统的应用场景的一个时序图。在图3的应用场景中,第一客户端具有预先指定的第一服务器集群A1,第一服务器集群A1归属于第一服务器集群组A;第二客户端具有预先指定的第二服务器集群B1,第二服务器集群B1 归属于第二服务器集群组B。如标号301所示,上述第一客户端可以本地接收用户触发的数据发送指令,将该数据发送指令所指示的数据发送至第一服务器集群组A中的第一服务器集群A1。如标号302所示,数据同步端可以将第一服务器集群A1中的数据同步至第二服务器集群组B中的各个第二服务器集群。如标号303所示,上述第二客户端可以从第二服务器集群组B中的第二服务器集群B1中获取数据。如标号304所示,响应于当前从第二服务器集群B1正在获取的具有位置信息M的数据传输中断,则上述第二客户端可以基于位置信息M,在预先存储的第二位置信息组集合中确定目标第二位置信息组(例如包括与位置信息M相同的第二位置信息的第二位置信息组)。如标号305所示,上述第二客户端可以在上述目标第二位置信息组中随机选取第二位置信息作为目标第二位置信息,其中,该目标第二位置信息所对应的第二服务器集群B2与第二服务器集群B1不是同一个第二服务器集群。如标号306所示,上述第二客户端可以在第二服务器集群B2中,从上述目标第二位置信息所指示的存储位置开始继续获取数据。
本申请的上述实施例提供的系统有效利用第一服务器集群组和第二服务器集群组,以及利用第二客户端对目标第二位置信息的确定,提高了数据处理系统的稳定性和数据处理效率。
进一步参考图4,其示出了数据处理系统的又一个实施例的时序图。
本实施例的数据处理系统可以包括:第一客户端、数据同步端、监控端和第二客户端;该第一客户端,用于接收数据发送指令,将该数据发送指令所指示的数据发送至第一服务器集群组中的第一服务器集群;该数据同步端,用于将该第一服务器集群组中的第一服务器集群中的数据同步至第二服务器集群组中的第二服务器集群;该监控端,用于监控第二服务器集群组中的各个第二服务器集群的负载情况,并将监控到的该第二服务器集群组中的各个第二服务器集群的负载情况反馈到该第二客户端;该第二客户端,用于从目标第二服务器集群获取数据,其中,该目标第二服务器集群归属于该第二服务器集群组; 响应于当前从该目标第二服务器集群正在获取的具有位置信息的数据传输中断,则基于该位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组,其中,该第二位置信息组集合中的每个第二位置信息组所包括的各条第二位置信息分别对应该第二服务器集群组中的不同的第二服务器集群,该目标第二位置信息组中存在与该位置信息匹配的第二位置信息;基于该目标第二位置信息组得到候选第二服务器集群组;基于最新接收到的该候选第二服务器集群组中的各个候选第二服务器集群的负载情况,在该候选第二服务器集群组中选取候选第二服务器集群,将该目标第二位置信息组中的、与所选取的候选第二服务器集群对应的第二位置信息作为目标第二位置信息;在该目标第二位置信息所对应的第二服务器集群中,从该目标第二位置信息所指示的存储位置开始继续获取数据。
如图4所示,在步骤401中,第一客户端接收数据发送指令,将该数据发送指令所指示的数据发送至第一服务器集群组中的第一服务器集群。
在步骤402中,数据同步端将第一服务器集群组中的第一服务器集群中的数据同步至第二服务器集群组中的第二服务器集群。
在本实施例中,针对步骤401和步骤402的解释说明可分别参考图2所示实施例中的步骤201和步骤202中的相关说明,在此不再赘述。
在步骤403中,监控端监控第二服务器集群组中的各个第二服务器集群的负载情况,并将监控到的负载情况反馈到第二客户端。
在本实施例中,监控端可以实时或周期性地(例如每隔10分钟或半小时等)监控上述第二服务器集群组中的各个第二服务器集群的负载情况,并将该负载情况反馈到上述第二客户端。作为示例,上述监控端上可以预先部署有监控工具,该监控工具可以基于预设监控指标在上述第二服务器集群组中的各个第二服务器集群中采集监控数据,该监控工具还可以对采集的监控数据进行分析,计算出用于表征上述第二服务器集群组中的每个第二服务器集群的负载情况的数值。上述监控端可以将该数值反馈到上述第二客户端。需要说明的是,上述预 设监控指标可以例如包括硬盘占用率、内存占用率、CPU(Central Processing Unit,中央处理器)占用率、带宽利用率等等。
在步骤404中,第二客户端从目标第二服务器集群获取数据。
在步骤405中,响应于当前从目标第二服务器集群正在获取的具有位置信息的数据传输中断,则第二客户端基于位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组。
在本实施例中,针对步骤404和步骤405的解释说明可分别参考图2所示实施例中的步骤203和步骤204中的相关说明,在此不再赘述。
在步骤406中,第二客户端基于目标第二位置信息组得到候选第二服务器集群组。
在本实施例中,由于上述第二位置信息组集合中的每个第二位置信息组所包括的各条第二位置信息分别对应上述第二服务器集群组中的不同的第二服务器集群,因此,上述第二客户端可以基于所确定的目标第二位置信息组得到候选第二服务器集群组。需要说明的是,该候选第二服务器集群组中的各个候选第二服务器集群是上述第二服务器集群组中的第二服务器集群。
在步骤407中,第二客户端基于最新接收到的候选第二服务器集群组中的各个候选第二服务器集群的负载情况,在候选第二服务器集群组中选取候选第二服务器集群,将目标第二位置信息组中的、与所选取的候选第二服务器集群对应的第二位置信息作为目标第二位置信息。
在本实施例中,上述第二客户端在得到候选第二服务器集群组后,上述第二客户端可以基于最新接收到的上述候选第二服务器集群组中的各个候选第二服务器集群的负载情况,在上述候选第二服务器集群组中选取候选第二服务器集群,将上述目标位置信息组中的、与所选取的候选第二服务器集群对应的第二位置信息作为目标第二位置信息。作为示例,上述第二客户端可以从上述候选第二服务器集群组中选取负载最小的候选第二服务器集群,例如将分别表征上述候选第二服务器集群组中的各个候选第二服务器集群的负载情况的数值两两进 行比较,以选取负载最小的候选第二服务器集群。
在本实施例的一些可选的实现方式中,第二服务器集群组中的部分第二服务器集群可以部署在同一机房中,上述第二客户端可以具有对应的机房信息。上述第二客户端可以确定上述候选第二服务器集群组中的、部署在该机房信息所指示的机房中的候选第二服务器集群中是否存在未超负载的候选第二服务器集群,若存在,则上述第二客户端可以选取上述未超负载的候选第二服务器集群中的负载最小的候选第二服务器集群。若不存在上述未超负载的候选第二服务器集群,则上述第二客户端可以从上述候选第二服务器集群组中的、未部署在上述机房信息所指示的机房中的候选第二服务器集群中选取未超负载且负载最小的候选第二服务器集群。
在步骤408中,第二客户端在目标第二位置信息所对应的第二服务器集群中,从目标第二位置信息所指示的存储位置开始继续获取数据。
在本实施例中,上述第二客户端在确定目标第二位置信息后,可以在该目标第二位置信息所对应的第二服务器集群中,从该目标第二位置信息所指示的存储位置开始继续获取数据。
在本实施例的一些可选的实现方式中,上述监控端在监控上述第二服务器集群组中的各个第二服务器集群的负载情况时,还可以监控上述第一服务器集群组中的各个第一服务器集群组的负载情况,并将该负载情况反馈到上述第一客户端。
在本实施例的一些可选的实现方式中,上述第一客户端在向上述第一服务器集群组中的第一服务器集群发送的数据传输中断时,上述第一客户端可以基于最新接收到的上述第一服务器集群组中的各个第一服务器集群的负载情况,在上述第一服务器集群组中选取第一服务器集群作为目标第一服务器集群,上述第一客户端可以向该目标第一服务器集群重新发送传输中断的数据。需要指出的是,该目标第一服务器集群通常与数据传输中断时所连接的第一服务器集群不是同一个集群。这里,上述第一服务器集群组中的部分第一服务器集群可以部署在同一机房中,上述第一客户端可以具有对应的第一机房信息。需 要说明的是,目标第一服务器集群的选取方法可参考图4所示实施例中的步骤407所记载的选取候选第二服务器集群的方法,在此不再赘述。
在本实施例的一些可选的实现方式中,上述第一服务器集群组中的部分第一服务器集群和上述第二服务器集群组中的部分第二服务器集群可以部署在同一机房中。
在本实施例的一些可选的实现方式中,上述监控端还可以用于:在监控到上述第一服务器集群组中的第一服务器集群超负载时,向该第一服务器集群当前所连接的第一客户端组中的至少一个第一客户端发送第一集群切换指令;和/或在监控到上述第二服务器集群组中的第二服务器集群超负载时,向该第二服务器集群当前所连接的第二客户端组中的至少一个第二客户端发送第二集群切换指令。需要说明的是,该第一集群切换指令所指示的第一服务器集群可以是上述第一服务器集群组中的负载最小的第一服务器集群;该第集群切换指令所指示的第二服务器集群可以是上述第二服务器集群组中的负载最小的第二服务器集群。
在本实施例的一些可选的实现方式中,上述第一客户端还可以用于:响应于接收到上述监控端发送的第一集群切换指令,则从当前所连接的第一服务器集群切换到所接收到的第一集群切换指令所指示的第一服务器集群。这样,可以提高第一客户端的数据发送效率。
在本实施例的一些可选的实现方式中,上述第二客户端还可以用于:响应于接收到上述监控端发送的第二集群切换指令,则从当前所连接的第二服务器集群切换到所接收到的第二集群切换指令所指示的第二服务器集群。这样,可以提高第二客户端的数据获取效率。
在本实施例的一些可选的实现方式中,上述监控端还可以用于:在监控到上述第一服务器集群组中的第一服务器集群的带宽利用率超出阈值时,向该第一服务器集群当前所连接的第一客户端组中的至少一个第一客户端发送包括第一传输速度的第一限速指令;和/或在监控到上述第二服务器集群组中的第二服务器集群的带宽利用率超出上述阈值时,向该第二服务器集群当前所连接的第二客户端组中的至少一 个第二客户端发送包括第二传输速度的第二限速指令。作为示例,上述监控端在监控到上述第一服务器集群组中的第一服务器集群的带宽利用率超出阈值时,上述监控端可以向该第一服务器集群当前所连接的第一客户端组中的各个第一客户端发送包括第一传输速度的第一限速指令。上述监控端在监控到上述第二服务器集群组中的第二服务器集群的带宽利用率超出上述阈值时,向该第二服务器集群当前所连接的第二客户端组中的各个第二客户端发送包括第二传输速度的第二限速指令。
在本实施例的一些可选的实现方式中,上述第一客户端还可以用于:响应于接收到上述监控端发送的第一限速指令,则采用所接收到的第一限速指令所包括的第一传输速度发送数据。这样,可以减轻上述第一客户端当前所连接的第一服务器集群的带宽压力。
在本实施例的一些可选的实现方式中,上述第二客户端还可以用于:响应于接收到上述监控端发送的第二限速指令,则采用所接收到的第二限速指令所包括的第二传输速度获取数据。这样,可以减轻上述第二客户端当前所连接的第二服务器集群的带宽压力。
从图4中可以看出,与图2对应的实施例相比,本实施例中的数据处理系统突出了对目标第二位置信息进行确定的步骤。由此,本实施例描述的方案可以使第二客户端在目标第二位置信息所对应的负载较小的第二服务器集群中,从该目标第二位置信息所指示的存储位置继续获取数据,从而可以进一步提高数据处理系统的稳定性,以及提高第二客户端的数据获取效率。
进一步参考图5,其示出了数据处理方法的一个实施例的流程500。该数据处理方法的流程500,包括以下步骤:
步骤501,响应于当前从目标第二服务器集群正在获取的具有位置信息的数据传输中断,则基于位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组。
在本实施例中,数据处理方法运行于其上的电子设备(例如图1所示的第二客户端109)可以通过有线连接方式或者无线连接方式从目标第二服务器集群获取数据。若当前从目标第二服务器集群正在获 取的具有位置信息的数据传输中断,则上述电子设备可以基于上述位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组。其中,上述目标第二服务器集群归属于第二服务器集群组。上述目标第二服务器集群可以是预先为上述电子设备指定的第二服务器集群,也可以是上述电子设备在上述第二服务器集群组中选取的第二服务器集群,例如采用负载均衡算法选取的第二服务器集群,本实施例不对此方面内容做任何限定。这里,上述位置信息可以是正在获取的具有上述位置信息的数据在上述目标第二服务器集群中的存储位置的信息。上述第二位置信息组集合中的每个位置信息组所包括的各条第二位置信息可以分别对应上述第二服务器集群组中的不同的第二服务器集群。上述目标第二位置信息中存在与上述位置信息匹配(例如相同等)的第二位置信息。作为示例,上述第二客户端可以在上述第二位置信息组集合中查找包括与上述位置信息相同的第二位置信息的第二位置信息组,并将查找到的第二位置信息组作为目标第二位置信息组。需要说明的是,当正在获取的具有上述位置信息的数据的传输速度为零时,或上述第二端接收到针对该数据的传输异常信息时等等,上述第二客户端均可以确定该数据传输中断,本实施例不对此方面内容做任何限定。
在本实施例中,上述第二服务器集群组中的每个第二服务器集群中的数据可以是数据同步端从第一服务器集群组中的第一服务器集群同步至该第二服务器集群的。上述第一服务器集群组中的每个第一服务器集群中的数据可以是该第一服务器集群所连接的第一客户端上传的。
步骤502,从目标第二位置信息组中选取第二位置信息作为目标第二位置信息。
在本实施例中,从目标第二位置信息组中选取第二位置信息的方法可参考图2所示实施例中的步骤205中的相关描述,或参考图4所示实施例中的步骤406和步骤407中的相关描述,在此不再赘述。
步骤503,在目标第二位置信息所对应的第二服务器集群中,从目标第二位置信息所指示的存储位置开始继续获取数据。
在本实施例中,上述电子设备在确定目标第二位置信息后,可以在该目标第二位置信息所对应的第二服务器集群中,从该目标第二位置信息所指示的存储位置开始继续获取数据。
本申请的上述实施例提供的方法有效利用对目标第二位置信息的确定,避免了在目标第二位置信息所对应的第二服务器集群中从头开始获取数据,提高了数据获取效率。
进一步参考图6,作为对上述各图所示方法的实现,本申请提供了一种数据处理装置的一个实施例,该装置实施例与图5所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图6所示,本实施例所示的数据处理装置600包括:确定单元601、选取单元602和获取单元603。其中,确定单元601配置用于响应于当前从目标第二服务器集群正在获取的具有位置信息的数据传输中断,则基于上述位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组,其中,上述目标第二服务器集群归属于第二服务器集群组,上述第二位置信息组集合中的每个第二位置信息组所包括的各条第二位置信息分别对应上述第二服务器集群组中的不同的第二服务器集群,上述目标第二位置信息中存在与上述位置信息匹配的第二位置信息;选取单元602配置用于从上述目标第二位置信息组中选取第二位置信息作为目标第二位置信息;而获取单元603配置用于在上述目标第二位置信息所对应的第二服务器集群中,从上述目标第二位置信息所指示的存储位置开始继续获取数据。
在本实施例中,数据处理装置600中:确定单元601、选取单元602和获取单元603的具体处理及其所带来的技术效果可分别参考图5对应实施例中的步骤501、步骤502和步骤503的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,上述第二位置信息组集合中的每个第二位置信息可以对应第一位置信息,上述第一位置信息可以是存储在该第二位置信息组中的各条第二位置信息分别指示的存储位置的数据在所在的第一服务器集群中的存储位置的信息。
在本实施例的一些可选的实现方式中,上述确定单元601可以包 括:确定子单元(图中未示出),配置用于在预先存储的对应关系列表中确定目标对应关系,其中,上述对应关系列表中的每条对应关系包括第二位置信息和第一位置信息,该第二位置信息所指示的存储位置是上述目标第二服务器集群中的存储位置,上述目标对应关系是所包括的第二位置信息与上述位置信息匹配的对应关系;查找子单元(图中未示出),配置用于在上述第二位置信息组集合中查找所对应的第一位置信息与上述目标对应关系所包括的第一位置信息相同的第二位置信息组,将查找到的第二位置信息组作为目标第二位置信息组。
在本实施例的一些可选的实现方式中,上述位置信息可以包括索引号,上述对应关系列表中的每条对应关系所包括的第二位置信息可以包括第一索引号;以及上述确定子单元可以包括:第一查找模块(图中未示出),配置用于在上述对应关系列表中查找所包括的第二位置信息与上述位置信息相同的对应关系;第二查找模块(图中未示出),配置用于若未查找到,则在上述对应关系列表中查找所包括的第二位置信息包括目标第一索引号的对应关系,并将查找到的所包括的第二位置信息包括上述目标第一索引号的对应关系作为目标对应关系,其中,上述目标第一索引号满足以下任意一个条件:与上述索引号大小最接近且小于上述索引号、与上述索引号大小最接近且大于上述索引号。
在本实施例的一些可选的实现方式中,上述第二查找模块可以进一步配置用于:执行以下处理步骤:将上述索引号加减预置值以得到索引号范围,在上述对应关系列表中的、所包括的第二位置信息中的第一索引号处于上述索引号范围内的对应关系中查找所包括的第二位置信息包括上述目标第一索引号的对应关系,若查找到,则将查找到的所包括的第二位置信息包括上述目标第一索引号的对应关系作为目标对应关系;若未查找到所包括的第二位置信息包括上述目标第一索引号的对应关系,则对当前的上述预置值进行递增操作,并继续执行上述处理步骤。
在本实施例的一些可选的实现方式中,上述选取单元602可以包括:候选第二服务器集群组确定子单元(图中未示出),配置用于基于上述目标第二位置信息组得到候选第二服务器集群组;处理子单元(图 中未示出),配置用于基于最新接收到的上述候选第二服务器集群组中的各个候选第二服务器集群的负载情况,在上述候选第二服务器集群组中选取候选第二服务器集群,将上述目标第二位置信息组中的、与所选取的候选第二服务器集群对应的第二位置信息作为目标第二位置信息,其中,该负载情况是从所连接的监控端接收的。
在本实施例的一些可选的实现方式中,上述第二服务器集群组中的部分第二服务器集群可以部署在同一机房中,上述第二客户端可以具有对应的机房信息;以及上述处理子单元可以包括:第一选取模块(图中未示出),配置用于确定上述候选第二服务器集群组中的、部署在上述机房信息所指示的机房中的候选第二服务器集群中是否存在未超负载的候选第二服务器集群,若存在,则选取上述未超负载的候选第二服务器集群中的负载最小的候选第二服务器集群。
在本实施例的一些可选的实现方式中,上述处理子单元可以包括:第二选取模块(图中未示出),配置用于若不存在上述未超负载的候选第二服务器集群,则从上述候选第二服务器集群组中的、未部署在上述机房信息所指示的机房中的候选第二服务器集群中选取未超负载且负载最小的候选第二服务器集群。
在本实施例的一些可选的实现方式中,上述装置600还可以包括:切换单元(图中未示出),配置用于响应于接收到上述监控端发送的第二集群切换指令,则从当前所连接的第二服务器集群切换到所接收到的第二集群切换指令所指示的第二服务器集群。
在本实施例的一些可选的实现方式中,上述装置600还可以包括:第一获取单元(图中未示出),配置用于响应于接收到上述监控端发送的包括第二传输速度的第二限速指令,则采用该第二传输速度获取数据。
本申请的上述实施例提供的装置有效利用对目标第二位置信息的确定,避免了在目标第二位置信息所对应的第二服务器集群中从头开始获取数据,提高了数据获取效率。
下面参考图7,其示出了适于用来实现本申请实施例的电子设备的计算机系统700的结构示意图。图7示出的电子设备仅仅是一个示 例,不应对本申请实施例的功能和使用范围带来任何限制。
如图7所示,计算机系统700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有系统700操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本申请的系统中限定的上述功能。
需要说明的是,本申请所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储 器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括确定单元、选取单元和获取单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,确定单元还可以被描述为“基于位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组的单元”。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是 单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备包括:响应于当前从目标第二服务器集群正在获取的具有位置信息的数据传输中断,则基于上述位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组,其中,上述目标第二服务器集群归属于第二服务器集群组,上述第二位置信息组集合中的每个第二位置信息组所包括的各条第二位置信息分别对应上述第二服务器集群组中的不同的第二服务器集群,上述目标第二位置信息中存在与上述位置信息匹配的第二位置信息;从上述目标第二位置信息组中选取第二位置信息作为目标第二位置信息;在上述目标第二位置信息所对应的第二服务器集群中,从上述目标第二位置信息所指示的存储位置开始继续获取数据。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (19)
- 一种数据处理系统,其特征在于,所述系统包括第一客户端、数据同步端和第二客户端;所述第一客户端,用于接收数据发送指令,将所述数据发送指令所指示的数据发送至第一服务器集群组中的第一服务器集群;所述数据同步端,用于将所述第一服务器集群组中的第一服务器集群中的数据同步至第二服务器集群组中的第二服务器集群;所述第二客户端,用于从目标第二服务器集群获取数据,其中,所述目标第二服务器集群归属于所述第二服务器集群组;响应于当前从所述目标第二服务器集群正在获取的具有位置信息的数据传输中断,则基于所述位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组,其中,所述第二位置信息组集合中的每个第二位置信息组所包括的各条第二位置信息分别对应所述第二服务器集群组中的不同的第二服务器集群,所述目标第二位置信息组中存在与所述位置信息匹配的第二位置信息;从所述目标第二位置信息组中选取第二位置信息作为目标第二位置信息;在所述目标第二位置信息所对应的第二服务器集群中,从所述目标第二位置信息所指示的存储位置开始继续获取数据。
- 根据权利要求1所述的系统,其特征在于,所述第二位置信息组集合中的每个第二位置信息对应第一位置信息,所述第一位置信息是存储在该第二位置信息组中的各条第二位置信息分别指示的存储位置的数据在所在的第一服务器集群中的存储位置的信息。
- 根据权利要求2所述的系统,其特征在于,所述第二客户端还用于:在预先存储的对应关系列表中确定目标对应关系,其中,所述对应关系列表中的每条对应关系包括第二位置信息和第一位置信息,该第二位置信息所指示的存储位置是所述目标第二服务器集群中的存储 位置,所述目标对应关系是所包括的第二位置信息与所述位置信息匹配的对应关系;在所述第二位置信息组集合中查找所对应的第一位置信息与所述目标对应关系所包括的第一位置信息相同的第二位置信息组,将查找到的第二位置信息组作为目标第二位置信息组。
- 根据权利要求3所述的系统,其特征在于,所述位置信息包括索引号,所述对应关系列表中的每条对应关系所包括的第二位置信息包括第一索引号;以及所述第二客户端还用于:在所述对应关系列表中查找所包括的第二位置信息与所述位置信息相同的对应关系;若未查找到,则在所述对应关系列表中查找所包括的第二位置信息包括目标第一索引号的对应关系,并将查找到的所包括的第二位置信息包括所述目标第一索引号的对应关系作为目标对应关系,其中,所述目标第一索引号满足以下任意一个条件:与所述索引号大小最接近且小于所述索引号、与所述索引号大小最接近且大于所述索引号。
- 根据权利要求4所述的系统,其特征在于,所述第二客户端还用于:执行以下处理步骤:将所述索引号加减预置值以得到索引号范围,在所述对应关系列表中的、所包括的第二位置信息中的第一索引号处于所述索引号范围内的对应关系中查找所包括的第二位置信息包括所述目标第一索引号的对应关系,若查找到,则将查找到的所包括的第二位置信息包括所述目标第一索引号的对应关系作为目标对应关系;若未查找到所包括的第二位置信息包括所述目标第一索引号的对应关系,则对当前的所述预置值进行递增操作,并继续执行所述处理步骤。
- 根据权利要求1所述的系统,其特征在于,所述系统还包括监 控端,所述监控端用于:监控所述第一服务器集群组中的各个第一服务器集群的负载情况,并将监控到的所述第一服务器集群组中的各个第一服务器集群的负载情况反馈到所述第一客户端;和/或监控所述第二服务器集群组中的各个第二服务器集群的负载情况,并将监控到的所述第二服务器集群组中的各个第二服务器集群的负载情况反馈到所述第二客户端。
- 根据权利要求6所述的系统,其特征在于,所述第二客户端还用于:基于所述目标第二位置信息组得到候选第二服务器集群组;基于最新接收到的所述候选第二服务器集群组中的各个候选第二服务器集群的负载情况,在所述候选第二服务器集群组中选取候选第二服务器集群,将所述目标第二位置信息组中的、与所选取的候选第二服务器集群对应的第二位置信息作为目标第二位置信息。
- 根据权利要求7所述的系统,其特征在于,所述第二服务器集群组中的部分第二服务器集群部署在同一机房中,所述第二客户端具有对应的机房信息;以及所述第二客户端还用于:确定所述候选第二服务器集群组中的、部署在所述机房信息所指示的机房中的候选第二服务器集群中是否存在未超负载的候选第二服务器集群,若存在,则选取所述未超负载的候选第二服务器集群中的负载最小的候选第二服务器集群。
- 根据权利要求8所述的系统,其特征在于,所述第二客户端还用于:若不存在所述未超负载的候选第二服务器集群,则从所述候选第二服务器集群组中的、未部署在所述机房信息所指示的机房中的候选第二服务器集群中选取未超负载且负载最小的候选第二服务器集群。
- 根据权利要求6所述的系统,其特征在于,所述监控端还用于:在监控到所述第一服务器集群组中的第一服务器集群超负载时,向该第一服务器集群当前所连接的第一客户端组中的至少一个第一客户端发送第一集群切换指令;和/或在监控到所述第二服务器集群组中的第二服务器集群超负载时,向该第二服务器集群当前所连接的第二客户端组中的至少一个第二客户端发送第二集群切换指令。
- 根据权利要求10所述的系统,其特征在于,所述第一客户端还用于:响应于接收到所述监控端发送的第一集群切换指令,则从当前所连接的第一服务器集群切换到所接收到的第一集群切换指令所指示的第一服务器集群。
- 根据权利要求10所述的系统,其特征在于,所述第二客户端还用于:响应于接收到所述监控端发送的第二集群切换指令,则从当前所连接的第二服务器集群切换到所接收到的第二集群切换指令所指示的第二服务器集群。
- 根据权利要求6所述的系统,其特征在于,所述监控端还用于:在监控到所述第一服务器集群组中的第一服务器集群的带宽利用率超出阈值时,向该第一服务器集群当前所连接的第一客户端组中的至少一个第一客户端发送包括第一传输速度的第一限速指令;和/或在监控到所述第二服务器集群组中的第二服务器集群的带宽利用率超出所述阈值时,向该第二服务器集群当前所连接的第二客户端组中的至少一个第二客户端发送包括第二传输速度的第二限速指令。
- 根据权利要求13所述的系统,其特征在于,所述第一客户端还用于:响应于接收到所述监控端发送的第一限速指令,则采用所接收到的第一限速指令所包括的第一传输速度发送数据。
- 根据权利要求13所述的系统,其特征在于,所述第二客户端还用于:响应于接收到所述监控端发送的第二限速指令,则采用所接收到的第二限速指令所包括的第二传输速度获取数据。
- 一种数据处理方法,其特征在于,所述方法包括:响应于当前从目标第二服务器集群正在获取的具有位置信息的数据传输中断,则基于所述位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组,其中,所述目标第二服务器集群归属于第二服务器集群组,所述第二位置信息组集合中的每个第二位置信息组所包括的各条第二位置信息分别对应所述第二服务器集群组中的不同的第二服务器集群,所述目标第二位置信息中存在与所述位置信息匹配的第二位置信息;从所述目标第二位置信息组中选取第二位置信息作为目标第二位置信息;在所述目标第二位置信息所对应的第二服务器集群中,从所述目标第二位置信息所指示的存储位置开始继续获取数据。
- 一种数据处理装置,其特征在于,所述装置包括:确定单元,配置用于响应于当前从目标第二服务器集群正在获取的具有位置信息的数据传输中断,则基于所述位置信息,在预先存储的第二位置信息组集合中确定目标第二位置信息组,其中,所述目标第二服务器集群归属于第二服务器集群组,所述第二位置信息组集合中的每个第二位置信息组所包括的各条第二位置信息分别对应所述第 二服务器集群组中的不同的第二服务器集群,所述目标第二位置信息中存在与所述位置信息匹配的第二位置信息;选取单元,配置用于从所述目标第二位置信息组中选取第二位置信息作为目标第二位置信息;获取单元,配置用于在所述目标第二位置信息所对应的第二服务器集群中,从所述目标第二位置信息所指示的存储位置开始继续获取数据。
- 一种电子设备,其特征在于,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求17所述的方法。
- 一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求17所述的方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/629,497 US11588890B2 (en) | 2017-07-28 | 2018-07-06 | System, method and apparatus having a redundant cluster for processing data |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201710628061.6A CN109309698B (zh) | 2017-07-28 | 2017-07-28 | 数据处理系统、方法和装置 |
| CN201710628061.6 | 2017-07-28 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2019019897A1 true WO2019019897A1 (zh) | 2019-01-31 |
Family
ID=65040358
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2018/094878 Ceased WO2019019897A1 (zh) | 2017-07-28 | 2018-07-06 | 数据处理系统、方法和装置 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US11588890B2 (zh) |
| CN (1) | CN109309698B (zh) |
| WO (1) | WO2019019897A1 (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112541551A (zh) * | 2020-12-16 | 2021-03-23 | 中国联合网络通信集团有限公司 | 加油站用户信息处理方法、装置及服务器 |
| CN115378992A (zh) * | 2022-08-24 | 2022-11-22 | 中国银行股份有限公司 | 信息交互方法、装置、电子设备及存储介质 |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20200357198A1 (en) * | 2019-05-09 | 2020-11-12 | Toyota Motor North America, Inc. | Vehicle sensor tracking for customized vehicle profile |
| CN112286723B (zh) * | 2020-09-30 | 2025-03-04 | 北京大米科技有限公司 | 机房容灾控制方法、终端及存储介质 |
| CN112835936A (zh) * | 2021-02-05 | 2021-05-25 | 北京电解智科技有限公司 | 一种数据处理方法、装置和服务集群 |
| CN113810456B (zh) * | 2021-02-09 | 2024-08-20 | 京东科技信息技术有限公司 | 数据获取方法、装置、系统、计算机设备及存储介质 |
| CN114356243B (zh) * | 2022-01-06 | 2025-08-19 | 苏州挚途科技有限公司 | 数据处理方法、装置及服务器 |
| CN115134373B (zh) * | 2022-06-28 | 2025-05-30 | 中国工商银行股份有限公司 | 数据同步方法、装置、存储介质及电子设备 |
| CN115632987A (zh) * | 2022-09-29 | 2023-01-20 | 华迪计算机集团有限公司 | 基于dns与路由发布控制的负载均衡方法 |
| CN116132442A (zh) * | 2023-01-10 | 2023-05-16 | 阿里巴巴(中国)有限公司 | 多客户端数据传输方法、系统、电子设备和可读存储介质 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101771494A (zh) * | 2008-12-29 | 2010-07-07 | 深圳市维信联合科技有限公司 | 数据传输方法及装置 |
| CN104539690A (zh) * | 2014-12-24 | 2015-04-22 | 大连理工大学 | 一种基于反馈机制和md5码检测的服务器远程数据同步方法 |
| CN105554138A (zh) * | 2015-12-24 | 2016-05-04 | 深圳市优户科技有限公司 | 分布式数据同步系统及方法 |
| CN106953901A (zh) * | 2017-03-10 | 2017-07-14 | 重庆邮电大学 | 一种提高消息传递性能的集群通信系统及其方法 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6195680B1 (en) * | 1998-07-23 | 2001-02-27 | International Business Machines Corporation | Client-based dynamic switching of streaming servers for fault-tolerance and load balancing |
| US7412514B2 (en) * | 2000-08-17 | 2008-08-12 | Hoshiko Llc | Method and apparatus for improving bandwidth efficiency in a computer network |
| US20050278458A1 (en) * | 2004-06-09 | 2005-12-15 | Microsoft Corporation | Analysis services database synchronization |
| CN104618219A (zh) * | 2014-12-30 | 2015-05-13 | 北京奇虎科技有限公司 | 一种进行跨机房数据同步的方法和装置 |
| CN104980519B (zh) * | 2015-06-29 | 2019-03-05 | 北京奇虎科技有限公司 | 多机房存储系统 |
| CN106487823A (zh) * | 2015-08-24 | 2017-03-08 | 上海斐讯数据通信技术有限公司 | 一种基于sdn架构的文件传输方法及系统 |
| CN105610953B (zh) * | 2015-12-31 | 2019-07-23 | 深圳市优户科技有限公司 | 一种分布式数据同步系统及方法 |
| CN106933625A (zh) * | 2017-02-23 | 2017-07-07 | 湖北光谷天下传媒股份有限公司 | 一种多源软件更新的方法及系统 |
-
2017
- 2017-07-28 CN CN201710628061.6A patent/CN109309698B/zh active Active
-
2018
- 2018-07-06 US US16/629,497 patent/US11588890B2/en active Active
- 2018-07-06 WO PCT/CN2018/094878 patent/WO2019019897A1/zh not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101771494A (zh) * | 2008-12-29 | 2010-07-07 | 深圳市维信联合科技有限公司 | 数据传输方法及装置 |
| CN104539690A (zh) * | 2014-12-24 | 2015-04-22 | 大连理工大学 | 一种基于反馈机制和md5码检测的服务器远程数据同步方法 |
| CN105554138A (zh) * | 2015-12-24 | 2016-05-04 | 深圳市优户科技有限公司 | 分布式数据同步系统及方法 |
| CN106953901A (zh) * | 2017-03-10 | 2017-07-14 | 重庆邮电大学 | 一种提高消息传递性能的集群通信系统及其方法 |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112541551A (zh) * | 2020-12-16 | 2021-03-23 | 中国联合网络通信集团有限公司 | 加油站用户信息处理方法、装置及服务器 |
| CN112541551B (zh) * | 2020-12-16 | 2023-11-24 | 中国联合网络通信集团有限公司 | 加油站用户信息处理方法、装置及服务器 |
| CN115378992A (zh) * | 2022-08-24 | 2022-11-22 | 中国银行股份有限公司 | 信息交互方法、装置、电子设备及存储介质 |
| CN115378992B (zh) * | 2022-08-24 | 2024-02-27 | 中国银行股份有限公司 | 信息交互方法、装置、电子设备及存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN109309698A (zh) | 2019-02-05 |
| CN109309698B (zh) | 2020-09-29 |
| US20200204624A1 (en) | 2020-06-25 |
| US11588890B2 (en) | 2023-02-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2019019897A1 (zh) | 数据处理系统、方法和装置 | |
| US11356748B2 (en) | Method, apparatus and system for slicing live streaming | |
| US11736749B2 (en) | Interactive service processing method and system, device, and storage medium | |
| WO2021237433A1 (zh) | 消息推送方法、装置、电子设备及计算机可读介质 | |
| US10623199B2 (en) | Outputting audio based on user location | |
| CN107315825B (zh) | 一种索引更新系统、方法及装置 | |
| US20160072865A1 (en) | Active offline storage management for streaming media application used by multiple client devices | |
| CN111277847B (zh) | 直播中聊天消息的展示方法、装置、服务器及系统 | |
| WO2014108030A1 (zh) | Web轮询方法、装置及系统 | |
| CN107846621A (zh) | 延时处理方法、系统和电子设备 | |
| CN108235051B (zh) | 直播系统及直播数据的存储和获取方法 | |
| CN112311874B (zh) | 媒体数据处理方法、装置、存储介质及电子设备 | |
| CN112069353A (zh) | 音乐播放控制方法、装置、存储介质及电子设备 | |
| CN103312593B (zh) | 一种消息分发系统及方法 | |
| CN110162410B (zh) | 一种消息处理方法和装置 | |
| CN113132403A (zh) | 用于内容分发网络的回源方法和装置 | |
| US9137331B2 (en) | Adaptive replication | |
| CN112860505B (zh) | 一种分布式集群的调控方法及装置 | |
| CN107526758B (zh) | 消息推送方法和装置 | |
| EP3754998A1 (en) | Streaming media quality monitoring method and system | |
| CN110166834B (zh) | 一种数据播放方法、装置及存储介质 | |
| CN114222086A (zh) | 音视频码流的调度方法、系统、介质及电子装置 | |
| CN117749784A (zh) | 资源获取方法、装置、电子设备及存储介质 | |
| CN116112640B (zh) | 信息传输方法、装置和系统 | |
| US20170288816A1 (en) | Method and system for compensating hls slice loss |
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: 18838537 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 29/05/2020) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 18838537 Country of ref document: EP Kind code of ref document: A1 |