Service scheduling method and device, electronic equipment and readable storage medium

By splitting the vehicle data into business node numbers and format recognition rules, the problem of low efficiency in vehicle data processing was solved, achieving efficient and accurate data processing and improved user experience.

CN119011679BActive Publication Date: 2025-12-16LEADOR SPATIAL INFORMATION TECH CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411166129.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-08-23
Publication Date
2025-12-16
Estimated Expiration
2044-08-23

AI Technical Summary

Technical Problem

Existing technologies for in-vehicle data processing are inefficient and time-consuming, impacting user experience.

Method used

By acquiring the business data to be scheduled, the number of business nodes available for processing the business data is determined. The business data is then split using the format recognition rules corresponding to the data structure and the number of business nodes to obtain business sub-data corresponding to the number of business nodes, and then allocated to the corresponding business nodes for data processing.

Benefits of technology

It improves the accuracy and efficiency of data processing, enhances the scalability and fault tolerance of business scheduling, avoids redundancy and chaos in the data splitting process, and improves the efficiency of the overall processing flow.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119011679B_ABST
    Figure CN119011679B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of data processing, and provides a business scheduling method and device, electronic equipment and a readable storage medium. The method comprises the following steps: acquiring business data to be scheduled, and determining the number of business nodes available for processing the business data; determining the data structure of the business data, splitting the business data by using a format identification rule corresponding to the data structure and the number of business nodes, so as to obtain business sub-data corresponding to the number of business nodes; and allocating each business sub-data to a corresponding business node for data processing. The application can improve the processing efficiency of business data, and enhance the scalability and fault tolerance of business scheduling.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data processing technology, and in particular to a service scheduling method, apparatus, electronic device, and readable storage medium. Background Technology

[0002] With the rapid development of internet technology, the amount of data in various fields is growing dramatically. Especially in the practice of map data production, the preprocessing of vehicle data is an essential step. This preprocessing involves algorithmic processing of inertial navigation data, laser data, and image data. Due to the massive scale of these data, the complexity of their business types, and the long processing time—for example, when processing vehicle data spanning 100 kilometers, key steps such as lane line extraction and feature detection (e.g., sign recognition, bridge detection) often take several hours—resulting in low processing efficiency. This impacts subsequent processing flows, directly leading to low overall processing efficiency, and consequently affecting subsequent processing flows and the user experience. Summary of the Invention

[0003] In view of this, embodiments of this application provide a service scheduling method, apparatus, electronic device, and readable storage medium to solve the problems of low efficiency and long processing time of in-vehicle data in the prior art, which in turn affects user experience.

[0004] A first aspect of this application provides a service scheduling method, the method comprising:

[0005] Obtain the business data to be scheduled and determine the number of business nodes that can be used to process the business data; determine the data structure of the business data, and use the format recognition rules corresponding to the data structure and the number of business nodes to split the business data to obtain business sub-data corresponding to the number of business nodes; allocate each business sub-data to the corresponding business node for data processing.

[0006] A second aspect of this application provides a service scheduling apparatus, the apparatus comprising:

[0007] The acquisition module is configured to acquire the business data to be scheduled and determine the number of business nodes available for processing the business data; the splitting module is configured to determine the data structure of the business data, split the business data using the format recognition rules corresponding to the data structure and the number of business nodes, and obtain business sub-data corresponding to the number of business nodes; the allocation module is configured to allocate each business sub-data to the corresponding business node for data processing.

[0008] A third aspect of this application provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the above-described method.

[0009] A fourth aspect of this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the above-described method.

[0010] The beneficial effects of the embodiments in this application compared with the prior art are:

[0011] The method in this embodiment acquires the business data to be scheduled and determines the number of business nodes available for processing the business data; it determines the data structure of the business data, and uses the format recognition rules corresponding to the data structure and the number of business nodes to split the business data, obtaining business sub-data corresponding to the number of business nodes; each business sub-data is assigned to the corresponding business node for data processing. This method, instead of directly splitting the business data, acquires the business data to be scheduled and splits it using the format recognition rules corresponding to the number of business nodes available for processing the business data and the business data structure, effectively avoiding redundancy and confusion in the data splitting process and improving the accuracy and efficiency of data processing. Specifically, by deeply understanding the internal structure and characteristics of the business data and adopting customized format recognition rules, it can ensure that each split business sub-data maintains its original logical integrity and data consistency. Simultaneously, the split data can be reorganized with business parameters to obtain task parameters for multiple business sub-data. These business sub-data can be executed independently in parallel and merged after execution to complete the entire data processing flow. This improves the processing efficiency of business data and enhances the scalability and fault tolerance of business scheduling, avoiding the problems of low efficiency and long processing time for vehicle data in existing technologies, which negatively impact user experience. Attached Figure Description

[0012] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0013] Figure 1 This is a flowchart illustrating a service scheduling method provided in an embodiment of this application;

[0014] Figure 2 This is a system framework diagram of a service scheduling system provided in an embodiment of this application;

[0015] Figure 3 This is a schematic diagram of the structure of a service scheduling device provided in an embodiment of this application;

[0016] Figure 4 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation

[0017] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application can also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.

[0018] The following detailed description, in conjunction with the accompanying drawings, describes a service scheduling method, apparatus, electronic device, and readable storage medium according to embodiments of this application.

[0019] Figure 1 This is a flowchart illustrating a service scheduling method provided in an embodiment of this application. Figure 1 As shown, the method includes:

[0020] S101, Obtain the business data to be scheduled and determine the number of business nodes that can be used to process the business data;

[0021] S102, determine the data structure of the business data, and use the format recognition rules corresponding to the data structure and the number of business nodes to split the business data to obtain the business sub-data corresponding to the number of business nodes;

[0022] S103, allocate each business sub-data to the corresponding business node for data processing.

[0023] It is understood that the business scheduling method provided in this example is applied to a server, and the server is equipped with a scheduling service cluster. This scheduling service cluster includes at least one scheduling service instance used to schedule business data. After receiving the business data to be scheduled, the scheduling service cluster can immediately query the number of business nodes available to process the data, and it can also periodically query the number of business nodes available to process the data. It should be noted that the business data to be scheduled can be a single task exceeding a certain threshold, or multiple parallel tasks received simultaneously.

[0024] In some examples, after determining the number of business nodes available for processing business data, this example further determines the corresponding format recognition rules based on the data structure of the business data. Since different data structures correspond to different format recognition rules, different splitting rules can be used to split business data with different data structures. Therefore, compared with directly splitting the business data, the accuracy and efficiency of data processing can be significantly improved, and it is also convenient to merge the split data into complete data after the data processing is completed.

[0025] It is understandable that, during the data splitting process, this example not only utilizes format recognition rules corresponding to the data structure to split the business data, but also combines this with the number of available business nodes to ensure that the number of business sub-data obtained from the splitting is the same as the number of business nodes. This allows for reasonable task allocation, improves data processing efficiency, and reduces queuing and idle time caused by unreasonable splitting. Furthermore, during the data splitting process, the current load of each business node can also be used as a basis for the splitting process. For example, if the current load of a business node is too high, the amount of business sub-data split to that business node can be smaller; if the current load of a business node is low, the amount of business sub-data split to that business node can be larger. The specific data volume is determined based on the current load of the business node, and this embodiment does not impose specific limitations on it.

[0026] According to the technical solution provided in this application, business data to be scheduled is obtained, and the number of business nodes that can be used to process the business data is determined; the data structure of the business data is determined, and the business data is split using format recognition rules corresponding to the data structure and the number of business nodes to obtain business sub-data corresponding to the number of business nodes; each business sub-data is assigned to the corresponding business node for data processing. This method obtains the business data to be scheduled and splits it using format recognition rules corresponding to the number of business nodes that can be used to process the business data and the business data structure, rather than directly splitting the business data. This effectively avoids redundancy and confusion in the data splitting process and improves the accuracy and efficiency of data processing. Specifically, by deeply understanding the internal structure and characteristics of the business data and adopting customized format recognition rules, it can ensure that each split business sub-data maintains its original logical integrity and data consistency. At the same time, the split data can be reorganized with business parameters to obtain task parameters for multiple business sub-data. These business sub-data can be executed independently in parallel and merged after execution to complete the entire data processing flow. This improves the efficiency of business data processing, while also enhancing the scalability and fault tolerance of business scheduling, avoiding the problems of low efficiency and long processing time for vehicle data in existing technologies, which in turn affect user experience.

[0027] In some embodiments, determining the number of business nodes that can be used to process business data includes: generating a query request to query the number of business nodes that can be used to process business data; querying a target service management system using the query request and receiving the query results returned by the target service management system, wherein the target service management system stores registration information for all business nodes; and obtaining the number of business nodes that can be used to process business data based on the query results.

[0028] Specifically, when determining the number of business nodes available for processing business data, the scheduling service cluster can generate a query request and use it to query the target service management. Since the target service management stores the registration information of all business nodes, as well as the registration information of the scheduling service cluster, the target service management can perform service discovery and configuration management. That is, the scheduling service cluster can use the target service management to query the basic information and working status of business nodes. During business execution, it can also use the target service management to query the association between each scheduling service instance in the task scheduling service and the business nodes, thereby querying specific information about the business data processing process, and thus rationally allocating business data and improving the processing efficiency of business data.

[0029] In some examples, target service management includes, but is not limited to, Nacos service management. For instance, target service management is Nacos service management itself. Nacos service management can receive registration information from microservices such as scheduling service clusters, business nodes, and gateway services to enable calls between services. Furthermore, Nacos service management can perform health checks on registered service instances to ensure service availability. If a service instance is found to be unhealthy (e.g., unable to respond to requests), Nacos service management will remove it from the service list to prevent other services from calling unavailable instances.

[0030] Understandably, Nacos service management can also be configured to allow SkyWalking to collect service call-related data, including inter-service request and response times, error rates, etc. Nacos service management can also obtain performance data for each service node through its provided APIs or monitoring endpoints, such as memory usage, connection count, and request processing speed. In the application code, Nacos service management-related operations are associated with the service call chain using identifiers or tags. This allows the monitoring data to clearly show the impact of interactions between service nodes on service performance. Finally, the associated data is uniformly displayed as service performance metrics in the SkyWalking interface.

[0031] According to the technical solution provided in this application embodiment, a query request is generated to query the number of business nodes that can be used to process business data; the query request is used to query the target service management, and the query results returned by the target service management are received, wherein the target service management stores the registration information of all business nodes; based on the query results, the number of business nodes that can be used to process business data is obtained. Through the management of the target service management, the correlation between the business scheduling cluster and business nodes can be improved, thereby facilitating the query of the status between each service and thus improving the processing efficiency of business data.

[0032] Furthermore, in some embodiments, business data is split using format recognition rules corresponding to the data structure and the number of business nodes, including: parsing the business data to obtain the data structure of the business data; determining the format recognition rules corresponding to the data type based on the data structure; and determining the splitting rules of the business data through the format recognition rules; and splitting the business data using the splitting rules based on the number of business nodes.

[0033] Specifically, upon receiving the business data to be scheduled, it is first parsed to extract key information and determine the data structure. The data structure may include various types; in this embodiment, the data includes idx, las, and nav, etc. Each type has its specific parsing method. After parsing, based on the parsed data structure, format recognition rules matching the current data type are determined. These rules can be predefined or temporarily constructed to guide the system on how to understand and process data in a specific format.

[0034] Understandably, once the format recognition rules are determined, the system can use these rules to formulate rules for splitting business data. For example, by using format recognition rules (file extensions, specific file header identifiers, or data structure characteristics, etc.), the system can determine splitting rules for the formats (idx, las, nav) contained in the business data. These splitting rules define how to decompose a large business data packet into multiple smaller parts for distribution to different service nodes for processing. Finally, based on the splitting rules and the current business nodes, the actual splitting operation is performed on the business data, ensuring that the split data corresponds to the available service node information and the number of business nodes.

[0035] According to the technical solution provided in the embodiments of this application, the business data is parsed to obtain the data structure of the business data. Based on the data structure, the format recognition rules corresponding to the data type are determined, and the splitting rules of the business data are determined through the format recognition rules. Based on the number of business nodes, the business data is split using the splitting rules. Through parsing the business data, recognizing the format, formulating the splitting rules, and splitting the data based on the business nodes, data with different data structures can be efficiently split, thereby achieving efficient and flexible processing of complex business data.

[0036] In addition, in some embodiments, the business data includes a first type of data and a second type of data. The business data is split using splitting rules, including: filtering the business data using the time identifier carried in the business data to obtain target filtered data; and splitting the first type of data and the second type of data based on the splitting rules and the target filtered data.

[0037] Specifically, the business data in this application embodiment includes a first type of data and a second type of data. These two types of data have different processing requirements, and different strategies need to be adopted for each type during the splitting process. First, the system uses the time identifier carried in the business data to filter the overall data. The time identifier can be a timestamp, a date range, or a specific event marker, used to identify the processing scope or order of the data. By filtering using the time identifier, it is possible to identify which data is the target data to be processed, avoiding interference from other data and improving data processing efficiency. Then, using the splitting rules and the target filtered data, the first type of data and the second type of data are split, resulting in split data that meets the subsequent processing requirements.

[0038] According to the technical solution provided in the embodiments of this application, the business data is filtered by using the time identifier carried in the business data to obtain the target filtered data; based on the splitting rules and the target filtered data, the first type of data and the second type of data are split, which can reduce the amount of data that needs to be processed, ensure that only the necessary data is processed, thereby improving the speed of subsequent processing, and thus improving the efficiency and flexibility of data processing.

[0039] In some embodiments, splitting the first type of data and the second type of data based on splitting rules and target filtering data includes: splitting the first type of data in the target filtering data to obtain first business sub-data, wherein the first business sub-data carries a first time identifier and a second time identifier; splitting the second type of data in the target filtering data using the first time identifier and the second time identifier to obtain second business sub-data; and obtaining business sub-data based on the first business sub-data and the second business sub-data.

[0040] Specifically, for the first type of data in the selected data, it is split according to the established splitting rules to generate the first business sub-data. The first business sub-data not only contains the key information of the first type of data, but also carries a first time identifier and a second time identifier. These two time identifiers mark the start and end times of the sub-data, which helps in the subsequent splitting of the second type of data.

[0041] Furthermore, using these time markers (i.e., the first time marker and the second time marker) as references, the second type of data in the filtered data is split. The second type of data has a logical dependency or timing requirement with the first type of data. By using the first and second time markers, it is ensured that the second type of data can be processed in the correct order and time frame. In this way, the second business sub-data can be obtained. Since the first and second type of data have the same time representation, the split data maintains data integrity and key information, while satisfying the timing constraints in the processing flow. Finally, the first and second business sub-data are integrated to form the final business subset.

[0042] Continuing the previous example, the filtered data follows a specific order: idx (first type file), las (second type file), and nav (second type file). Based on the total number of lines in the file and the node resource data supported by the task service, it is further divided into multiple independent subtasks. These subtasks are then retrieved sequentially from designated storage areas and submitted to subsequent processing flows. Specifically, this process involves analyzing the contents of the task.idx file and splitting it into N parts according to the aforementioned splitting criteria. Each part is considered an independent subtask (e.g., task1 to taskN), with the index file for task1 named task1.idx. Next, using the time information of the first and last records in task1.idx as filtering conditions, the corresponding data fragments are extracted from the task.las file to generate task1.las. The processing of task1.nav follows the same splitting logic as task1.las, and will not be elaborated here. In summary, by rearranging and redistributing the scheduled business data, a series of business sub-data from task1 to taskN were successfully constructed, ensuring that each sub-task could obtain complete and necessary data.

[0043] According to the technical solution provided in the embodiments of this application, the first type of data in the filtered data is split to obtain first business sub-data, wherein the first business sub-data carries a first time identifier and a second time identifier; the second type of data in the filtered data is split using the first time identifier and the second time identifier to obtain second business sub-data; based on the first business sub-data and the second business sub-data, business sub-data is obtained. By performing different splitting processes on different types of data, the task parameters of the split sub-data are reorganized to obtain the task parameters of the business sub-data. These sub-tasks can be executed independently and merged after execution to complete the entire data processing flow. This not only improves the efficiency of data processing but also enhances the scalability and fault tolerance of the system.

[0044] In some embodiments, after obtaining the service data to be scheduled, the method further includes: determining the weight information of each scheduling service instance; configuring a service weight for each scheduling service instance using the weight information, so as to allocate service data traffic to each scheduling service instance based on the service weight.

[0045] Specifically, when a scheduling service cluster contains multiple scheduling service instances, after acquiring the business data to be scheduled, the system determines the weight information for each scheduling service instance in the cluster. This weight information can be pre-set based on various factors, such as the processing capacity, current load, and health status of the scheduling service instance. After determining the weight information, the system configures a corresponding service weight for each scheduling service instance. This service weight will be used for subsequent business data traffic allocation. The system will allocate business data traffic according to these weights. Instances with higher weights will receive more business data, thus allowing for a more balanced distribution of workload across the entire cluster.

[0046] Continuing with the previous example, when there are two scheduling service instances in the scheduling service cluster: a lane line extraction instance and a feature detection instance, and the feature detection instance has stronger data processing capabilities, its service weight will be greater than that of the lane line extraction instance. For example, the service weight of the feature detection instance is 0.7, while that of the lane line extraction instance is 0.3. In this case, after obtaining the business data to be scheduled, 70% of the business data will be allocated to the feature detection instance, while the remaining 30% will be allocated to the lane line extraction instance. It should be noted that the lane line extraction instance and the feature detection instance in this embodiment are merely illustrative examples and do not constitute a limitation on this application.

[0047] In addition, it should be noted that if multiple scheduling service instances in the scheduling service cluster have the same service weight, different scheduling service instances will be called in turn according to the round-robin mechanism.

[0048] According to the technical solution provided in the embodiments of this application, the weight information of each scheduling service instance is determined; the weight information is used to configure the service weight for each scheduling service instance so as to allocate business data traffic to each scheduling service instance based on the service weight. By introducing weight information and a weight-based business data traffic allocation mechanism, the throughput, load balancing capability, availability and flexibility of the system can be improved.

[0049] In addition, in some embodiments, each service sub-data is allocated to a corresponding service node for data processing, including: determining a data allocation link corresponding to each service sub-data; and using the data allocation link to allocate each service sub-data to a corresponding service node for data processing.

[0050] Specifically, after business data is finely divided into multiple business sub-data, in order to ensure that these sub-data can be processed efficiently and orderly, the scheduling service cluster will construct a data distribution link based on the characteristics of the business sub-data (such as data size, processing complexity, timeliness requirements, etc.) and the real-time status of each node in the business service cluster (such as CPU utilization, memory usage, network bandwidth, etc.). Then, through the established data distribution link, each business sub-data is pushed to the corresponding business service node.

[0051] It should be noted that, to improve the reliability and fault tolerance of data processing, the scheduling service cluster can set up backup and recovery mechanisms for each business sub-data. If a business service node fails or experiences an abnormal interruption during processing, the scheduling service cluster can quickly restore the data from the backup and reassign the task to other available business service nodes to continue execution.

[0052] It is understandable that after allocating business sub-data to corresponding business service nodes for data processing using the data allocation link, the process also includes: determining the data model of the business sub-data and monitoring the load data of each node in the business service cluster in real time; evaluating each node based on the detected load data and predicting the load trend within a preset time period based on the evaluation results; and dynamically adjusting the data allocation link according to the load trend and the data model of the business sub-data to prioritize the allocation of business sub-data to nodes with lower loads, thereby achieving load balancing. The data model of the business sub-data includes basic information about the business (such as task ID, name, description, status, etc.), execution parameters, scheduling rules (such as execution time, end time, number of retries, etc.), and the dependency relationship between parent and child tasks.

[0053] According to the technical solution provided in the embodiments of this application, the data allocation link corresponding to each business sub-data is determined by using the scheduling service cluster; the data allocation link is used to allocate each business sub-data to the corresponding business service node for data processing, which can improve the transmission efficiency and accuracy of the business sub-data.

[0054] In addition, in some embodiments, after allocating each service sub-data to the corresponding service node for data processing, the process further includes:

[0055] The data processing process of each business node is monitored. If a target event occurs during the data processing, the event type of the target event is determined. The event handling strategy corresponding to the event type is determined, and the target event is processed according to the event handling strategy.

[0056] Specifically, after each business sub-data is assigned to a business node for data processing, the data processing process of each business node is monitored to determine the event type of the target event, such as network anomaly, task service unavailability, task execution failure, etc. Event processing strategies corresponding to the target event type are adopted to improve the success rate of the final successful execution of the business sub-data.

[0057] For example, the event handling strategy could be a retry strategy, specifically setting the number of retries to 5. The retry interval should be set using an exponentially increasing strategy, meaning the interval between each retry gradually increases. For example, the first retry interval might be 5 minutes, the second 10 minutes, the third 20 minutes, the fourth 30 minutes, and the fifth 45 minutes. If the task still fails after 5 retries, appropriate handling is required, such as logging an error and returning the error information to the upstream process. For successfully executed tasks, the normal subsequent processing flow can proceed.

[0058] Furthermore, during each retry, the task status can be maintained, including whether it is executing, successful, failed, progress percentage, and step information. The time and result of each retry are recorded for subsequent analysis and optimization. The retry triggering logic can be implemented using scheduled task annotations (such as @Scheduled) or a custom thread pool's timed scheduling mechanism (e.g., performing a scan every 5 seconds). For example, when a task fails, the system determines whether a retry is necessary based on the error type and retry policy. If a retry is required, the task status is updated to "Retrying," and retrying is performed at the set intervals.

[0059] According to the technical solution provided in this application, the data processing process of each business node is detected. If a target event occurs during the data processing, the event type of the target event is determined; an event handling strategy corresponding to the event type is determined, and the target event is processed according to the event handling strategy. By using an event handling strategy corresponding to the target event type, the success rate of the final successful execution of business sub-data can be improved.

[0060] Figure 2This is a system framework diagram of a service scheduling system provided in an embodiment of this application. For example... Figure 2 As shown:

[0061] The framework includes gateway services, scheduling service clusters, business service clusters, performance monitoring services, and target service management.

[0062] The target service management is used to receive registration information from gateway services, scheduling service clusters, and business service clusters, and to perform service discovery and configuration management based on this registration information.

[0063] The gateway service receives business data requests from clients and forwards them to the scheduling service cluster according to preset routing rules. In this process, the gateway service is also responsible for security operations such as request authentication, rate limiting, and attack prevention to ensure system stability and data security.

[0064] The scheduling service cluster is used to receive business data requests from the gateway service. The scheduling service cluster contains at least one scheduling service instance. It can determine the current business service cluster's load status, service availability, and other real-time information based on the registration information in the target service management, and intelligently select the most suitable business service instance to execute the request. At the same time, it provides a basis for splitting business data based on the determined current business service cluster's load status, service availability, and other real-time information.

[0065] The business service cluster is responsible for actually processing business data. The cluster contains multiple business nodes, each corresponding to a task service instance. Each instance can independently handle one or more types of business requests. Furthermore, the business service instances are isolated from each other using appropriate mechanisms (such as containerization or virtual machines) to ensure their independence and prevent a single point of failure from affecting the stability of the entire system.

[0066] The performance monitoring service continuously collects operational data and monitors performance metrics such as response time, throughput, and error rate for gateway services, scheduling service clusters, business service clusters, and target service management. Upon detecting anomalies or performance bottlenecks, the performance monitoring service can trigger an alert mechanism to ensure the continuous and stable operation of the system.

[0067] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the process of the embodiments of this application.

[0068] All of the above-mentioned optional technical solutions can be combined in any way to form the optional embodiments of this application, and will not be described in detail here.

[0069] The following are embodiments of the apparatus described in this application, which can be used to execute the embodiments of the method described in this application. For details not disclosed in the apparatus embodiments of this application, please refer to the embodiments of the method described in this application.

[0070] Figure 3 This is a schematic diagram of the structure of a service scheduling device provided in an embodiment of this application. Figure 3 As shown, the device includes:

[0071] The acquisition module 301 is configured to acquire the business data to be scheduled and determine the number of business nodes that can be used to process the business data;

[0072] The splitting module 302 is configured to determine the data structure of the business data, and split the business data using the format recognition rules corresponding to the data structure and the number of business nodes to obtain business sub-data corresponding to the number of business nodes.

[0073] The allocation module 303 is configured to allocate each business sub-data to the corresponding business node for data processing.

[0074] In some embodiments, the acquisition module 301 is further configured to generate a query request for querying the number of business nodes that can be used to process business data; use the query request to query the target service management and receive the query results returned by the target service management, wherein the target service management stores the registration information of all business nodes; and obtain the number of business nodes that can be used to process business data based on the query results.

[0075] In some embodiments, the splitting module 302 is further configured to parse the business data to obtain the data structure of the business data, determine the format recognition rules corresponding to the data type based on the data structure, and determine the splitting rules of the business data through the format recognition rules; and split the business data based on the number of business nodes using the splitting rules.

[0076] In some embodiments, the splitting module 302 is further configured to filter the business data using the time identifier carried in the business data to obtain target filtered data; and to split the first type of data and the second type of data based on the splitting rules and the target filtered data.

[0077] In some embodiments, the splitting module 302 is further configured to split the first type of data in the target filtering data to obtain the first business sub-data, wherein the first business sub-data carries a first time identifier and a second time identifier; split the second type of data in the target filtering data using the first time identifier and the second time identifier to obtain the second business sub-data; and obtain the business sub-data based on the first business sub-data and the second business sub-data.

[0078] In some embodiments, the acquisition module 301 is further configured to determine the weight information of each scheduling service instance; and to configure a service weight for each scheduling service instance using the weight information, so as to allocate business data traffic to each scheduling service instance based on the service weight.

[0079] In some embodiments, the allocation module 303 is further configured to determine the data allocation link corresponding to each service sub-data; and to allocate each service sub-data to the corresponding service node for data processing using the data allocation link.

[0080] In some embodiments, the allocation module 303 is further configured to detect the data processing process of each service node, and if a target event occurs during the data processing process, determine the event type of the target event; determine the event processing strategy corresponding to the event type, and process the target event according to the event processing strategy.

[0081] Figure 4 This is a schematic diagram of the electronic device 4 provided in an embodiment of this application. Figure 4 As shown, the electronic device 4 of this embodiment includes: a processor 401, a memory 402, and a computer program 403 stored in the memory 402 and executable on the processor 401. When the processor 401 executes the computer program 403, it implements the steps in the various method embodiments described above. Alternatively, when the processor 401 executes the computer program 403, it implements the functions of each module / unit in the various device embodiments described above.

[0082] Electronic device 4 can be a desktop computer, laptop, handheld computer, cloud server, or other electronic device. Electronic device 4 may include, but is not limited to, processor 401 and memory 402. Those skilled in the art will understand that... Figure 4 This is merely an example of electronic device 4 and does not constitute a limitation on electronic device 4. It may include more or fewer components than shown, or different components.

[0083] The processor 401 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.

[0084] The memory 402 can be an internal storage unit of the electronic device 4, such as a hard disk or RAM of the electronic device 4. The memory 402 can also be an external storage device of the electronic device 4, such as a plug-in hard disk, Smart Media Card (SMC), Secure Digital (SD) card, Flash Card, etc., equipped on the electronic device 4. The memory 402 can also include both internal and external storage units of the electronic device 4. The memory 402 is used to store computer programs and other programs and data required by the electronic device.

[0085] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0086] If integrated modules / units are implemented as software functional units and sold or used as independent products, they can be stored in a readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments can also be implemented by a computer program instructing related hardware. The computer program can be stored in a readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program may include computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The readable storage medium may include: any entity or device capable of carrying computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc.

[0087] The above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. A service scheduling method, characterized in that, include: Obtain the business data to be scheduled, and determine the number of business nodes that can be used to process the business data; The data structure of the business data is determined, and the business data is split using the format recognition rules corresponding to the data structure and the number of business nodes to obtain business sub-data corresponding to the number of business nodes; Each of the aforementioned business sub-data is assigned to the corresponding business node for data processing; The step of splitting the business data using format recognition rules corresponding to the data structure and the number of business nodes includes: The business data is parsed to obtain the data structure of the business data. Based on the data structure, a format recognition rule corresponding to the data type is determined, and the splitting rule of the business data is determined through the format recognition rule; wherein, the business data includes a first type of data and a second type of data; Based on the number of business nodes, the business data is filtered using the time identifier carried in the business data to obtain the target filtered data; The first type of data in the target filtering data is split to obtain the first business sub-data, wherein the first business sub-data carries a first time identifier and a second time identifier; The second type of data in the target filtering data is split using the first time identifier and the second time identifier to obtain the second business sub-data; The business sub-data is obtained based on the first business sub-data and the second business sub-data.

2. The method according to claim 1, characterized in that, Determining the number of service nodes that can be used to process the service data includes: Generate a query request to determine the number of business nodes available for processing the business data; The query request is used to query the target service management and the query results returned by the target service management are received, wherein the target service management stores the registration information of all business nodes; Based on the query results, the number of business nodes that can be used to process the business data is obtained.

3. The method according to claim 1, characterized in that, After obtaining the service data to be scheduled, the process also includes: Determine the weight information for each scheduling service instance; The weight information is used to configure a service weight for each scheduling service instance, so as to allocate business data traffic to each scheduling service instance based on the service weight.

4. The method according to claim 1, characterized in that, The step of allocating each of the service sub-data to the corresponding service node for data processing includes: Determine the data allocation link corresponding to each of the aforementioned business sub-data; The data allocation link is used to allocate each of the service sub-data to the corresponding service node for data processing.

5. The method according to claim 1, characterized in that, After allocating each of the aforementioned business sub-data to the corresponding business node for data processing, the process further includes: The data processing process of each business node is monitored, and if a target event occurs during the data processing, the event type of the target event is determined. Determine the event handling strategy corresponding to the event type, and process the target event according to the event handling strategy.

6. A service scheduling device, characterized in that, include: The acquisition module is configured to acquire the business data to be scheduled and determine the number of business nodes that can be used to process the business data; The splitting module is configured to determine the data structure of the business data, and split the business data using the format recognition rules corresponding to the data structure and the number of business nodes to obtain business sub-data corresponding to the number of business nodes; The allocation module is configured to allocate each of the service sub-data to the corresponding service node for data processing; The splitting module is specifically configured to: parse the business data to obtain its data structure; determine format recognition rules corresponding to the data type based on the data structure; and determine the splitting rules for the business data using the format recognition rules. The business data includes a first type of data and a second type of data. Based on the number of business nodes, the business data is filtered using time identifiers carried in it to obtain target filtered data. The first type of data in the target filtered data is split to obtain first business sub-data, wherein the first business sub-data carries a first time identifier and a second time identifier. The second type of data in the target filtered data is split using the first time identifier and the second time identifier to obtain second business sub-data. The business sub-data is obtained based on the first business sub-data and the second business sub-data.

7. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Service message verification method and device and computer storage medium

    CN109889375A

  • Information processing method and device and computer readable storage medium

    CN115514817A