Real-time sliding window short message fragmentation scheduling method based on multi-dimensional health score

By collecting multi-dimensional node indicators in real time and scoring their health, and combining sliding window and closed-loop feedback optimization, SMS tasks are dynamically allocated, solving the problem of insufficient dynamic adjustment of node status in existing technologies and achieving efficient and stable SMS sending scheduling.

CN122372936APending Publication Date: 2026-07-10FUJIAN FUJITSU COMM SOFTWARE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
FUJIAN FUJITSU COMM SOFTWARE CO LTD
Filing Date
2026-03-27
Publication Date
2026-07-10

AI Technical Summary

Technical Problem

Existing SMS mass messaging scheduling technology lacks a comprehensive evaluation and dynamic adjustment mechanism for the real-time operating status of nodes, resulting in insufficient utilization of node processing capacity, unbalanced system load, and difficulty in flexibly allocating batch size and sending rhythm during task execution.

Method used

A real-time sliding window SMS sharding scheduling method based on multi-dimensional health scores is adopted. The method collects multi-dimensional indicators such as CPU utilization, memory usage, GC status, network latency, I/O load, and sending error rate of each node in real time. The total health score is obtained through standardized processing and weighted calculation, and SMS tasks are dynamically allocated within the sliding window. The allocation strategy is optimized by combining closed-loop feedback and hot update mechanism.

Benefits of technology

It improves the overall efficiency and resource utilization of SMS sending, can allocate more tasks to high-performance nodes, reduce the load on low-performance nodes, adapt to changes in business peaks and troughs, and improve delivery rate and system stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122372936A_ABST
    Figure CN122372936A_ABST
Patent Text Reader

Abstract

This invention discloses a real-time sliding window SMS sharding scheduling method based on multi-dimensional health scores. It collects multi-dimensional operational index data from each SMS sending service node in real time; performs standardization and weighted calculations according to a preset weight system to obtain the real-time total health score of each node; generates a sliding window based on a preset time period and determines the total number of SMS messages that can be sent in the current window; and dynamically allocates the total number of messages in the window to each node according to the proportion of each node's total health score, generating and issuing SMS sharding tasks. This invention also supports hot updates of the weight system, batch size, and window period through a distributed configuration center, and achieves closed-loop feedback optimization by combining sending receipts. This invention can adaptively adjust task allocation according to the real-time operating status of nodes, enabling high-performance nodes to obtain more sending quotas and low-performance nodes to automatically reduce load, thereby significantly improving overall throughput, increasing resource utilization, and enhancing system stability and resilience.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of SMS platform technology, and in particular to a real-time sliding window SMS segmentation scheduling method based on multi-dimensional health scores. Background Technology

[0002] Currently, mainstream bulk SMS platforms generally adopt a distributed architecture to improve throughput and processing capacity. Their core scheduling mechanism typically relies on a combination of a distributed task scheduling system and message queue technology. Upon receiving a bulk SMS task containing a massive number of phone numbers, the platform first preprocesses the number list and breaks it down into multiple smaller, independently executable task units, or "shards," according to preset static rules. These sharded tasks are then written to a message queue, where multiple backend sending service nodes (consumers) pull and execute them in parallel, ultimately delivering the SMS messages via a direct connection to the operator's gateway or a third-party SMS channel.

[0003] In existing SMS bulk messaging scheduling technologies, common segmentation and scheduling methods mostly involve fixed batches, fixed sizes, or task allocation based on static rules such as carrier and region. While these solutions can achieve parallel sending, in actual operation, the processing capacity of sending nodes, system load, network latency, garbage collection (GC) frequency, and I / O status dynamically change over time, leading to significant differences in processing efficiency among different nodes in the same batch of tasks. Due to the lack of a comprehensive evaluation and dynamic adjustment mechanism for the real-time operating status of nodes, the scheduling center often cannot flexibly allocate batch size and sending rhythm during task execution, thus making it difficult to fully utilize the processing capacity of high-performance nodes and to reduce the load pressure on low-performance nodes in a timely manner. Summary of the Invention

[0004] The purpose of this invention is to provide a real-time sliding window SMS segmentation scheduling method based on multi-dimensional health scores.

[0005] The technical solution adopted in this invention is:

[0006] A real-time sliding window SMS fragmentation scheduling method based on multidimensional health scores, characterized by: including:

[0007] Real-time collection of multi-dimensional operational metrics data from each SMS sending service node;

[0008] According to the preset weighting system, the multi-dimensional operation index data is standardized and weighted to obtain the real-time health score of each SMS sending service node.

[0009] Based on a preset time period, a sliding window is generated, and the total number of SMS messages that can be sent in the current sliding window is determined.

[0010] Based on the real-time health score of each SMS sending service node, the total number of SMS messages in the current sliding window is dynamically allocated to each SMS sending service node, and SMS sharding tasks corresponding to each SMS sending service node are generated.

[0011] The SMS segmentation task is distributed to the task queue of the corresponding node so that the node can execute SMS sending.

[0012] Furthermore, the multi-dimensional operational metrics data includes at least two of the following metrics: CPU utilization, memory usage, garbage collection (GC) counts and time, network latency, I / O load, transmission anomaly rate, and task queue length.

[0013] Furthermore, based on a preset weighting system, the multi-dimensional operational indicator data is standardized and weighted to obtain the real-time health score of each node, specifically including:

[0014] Each indicator with different dimensions is converted into a unified scoring range to obtain the standardized value of each indicator.

[0015] The total real-time health score of the SMS sending service node is calculated by multiplying the standardized values ​​of each indicator by their corresponding preset weights and then summing the results.

[0016] Furthermore, determine the total number of text messages that can be sent for the current sliding window, specifically including:

[0017] Calculate the total number of SMS messages that can be sent in the current sliding window based on the global rate limiting policy, operator rate limits, and SMS channel quota.

[0018] Furthermore, based on the real-time health score of each node, the total number of SMS messages in the current sliding window is dynamically allocated to each node, specifically including:

[0019] The total number of SMS messages is allocated to each SMS sending service node based on the proportion of the total real-time health score of each node to the sum of the total health scores of all SMS sending service nodes.

[0020] Furthermore, the method also includes:

[0021] After sending an SMS message, the SMS sending service node collects and reports the SMS sending receipt.

[0022] Based on the SMS delivery receipts and the latest multi-dimensional operational metrics data, update the real-time health score of each SMS sending service node for task allocation in the next sliding window.

[0023] Furthermore, the preset weighting system, the time period of the sliding window, and the batch size of each SMS sending service node when executing SMS sending are hot-updated through a distributed configuration center; wherein, the batch size is used to define the number of SMS messages sent by the SMS sending service node in a single call.

[0024] This method calculates a comprehensive health score by real-time collection of multi-dimensional operational metrics from each sending service node, including CPU utilization, memory and GC status, network latency, I / O load, sending error rate, and task queue length. It then dynamically generates fragmented tasks using a sliding window mechanism. The scheduler allocates the number of sending requests within each window based on the health score and supports hot updates of batch size. This allows task allocation to adaptively adjust to changes in node status, significantly improving overall sending efficiency and resource utilization while maintaining stability.

[0025] The present invention adopts the above technical solution and has the following beneficial technical effects:

[0026] The real-time sliding window SMS fragmentation scheduling method based on multi-dimensional health scores proposed in this invention has significant advantages in terms of scheduling granularity, adaptability, and resource utilization efficiency. Existing technologies mostly employ fixed batches or static rule-based fragmentation, which cannot flexibly adjust according to the node's running status during task execution. This application collects multi-dimensional indicators such as CPU utilization, memory and GC status, network latency, I / O load, sending error rate, and task queue length in real time at each sending service node, and calculates a comprehensive health score using configurable weights, enabling the scheduling center to dynamically allocate sending quotas within the sliding window period.

[0027] This mechanism allows high-performance nodes to receive more task allocations when their health is high, while low-performance nodes automatically reduce their load when the load is high or the failure rate increases, thereby improving overall throughput and reducing latency. Simultaneously, batch sizes can be hot-updated during operation without interrupting tasks, adapting to changes in business peaks and troughs. Combined with closed-loop optimization through receipt feedback, the allocation strategy can continuously self-correct, further improving delivery rate and stability. In summary, this invention outperforms existing technologies in terms of real-time performance, flexibility, scalability, and resource utilization, providing a more efficient and stable scheduling solution for large-scale SMS sending scenarios. Attached Figure Description

[0028] The present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments;

[0029] Figure 1 This is a schematic diagram of the process of the present invention. Detailed Implementation

[0030] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings.

[0031] Figure 1 This is a flowchart illustrating a real-time sliding window SMS fragmentation scheduling method based on multi-dimensional health scores, provided in an embodiment of the present invention. This method aims to dynamically and intelligently allocate SMS sending tasks according to the real-time operating status of SMS sending service nodes, thereby improving the overall system throughput and resource utilization. This method can be collaboratively executed by a scheduling center and multiple SMS sending service nodes.

[0032] Step 101: Collect multi-dimensional operational metrics data of each SMS sending service node in real time.

[0033] In this embodiment, each service node participating in SMS sending (hereinafter referred to as "node") is equipped with a lightweight monitoring module. This monitoring module is responsible for collecting multi-dimensional indicator data that reflects the current operational health of the node in real time. These multi-dimensional operational indicator data include the following two types: CPU utilization, memory usage, garbage collection (GC) count and time, network latency, input / output (I / O) load, sending anomaly rate, and task queue length. This data forms the basis for subsequent evaluation of node health.

[0034] Step 102: Based on the preset weighting system, standardize and weight the multi-dimensional operation indicator data to obtain the real-time health score of each SMS sending service node.

[0035] The monitoring module reports the collected data to the dispatch center in real time. After receiving the raw indicator data from each node, the dispatch center first performs a unified summary.

[0036] Because different metrics have different dimensions and orders of magnitude (e.g., CPU utilization is a percentage, network latency is milliseconds), they cannot be directly compared and calculated. Therefore, the scheduling center needs to standardize these metrics. The standardization process involves converting each metric with different dimensions into a unified scoring range. For example, CPU utilization of 0%-100% is mapped to 100 points to 0 points (the lower the utilization, the higher the score), and network latency is also mapped to 0-100 points according to a preset rule, thus obtaining standardized values ​​for each metric.

[0037] Subsequently, the dispatch center performs a weighted calculation based on a pre-defined weighting system. This system assigns a weight value (e.g., 0-10) to each indicator to reflect the degree of attention given to each indicator in different business scenarios. The dispatch center multiplies the standardized value of each indicator by its corresponding pre-defined weight, then sums all the weighted scores to finally calculate the node's current real-time health score.

[0038] Step 103: Based on a preset time period, generate a sliding window and determine the total number of SMS messages that can be sent for the current sliding window.

[0039] The core scheduling logic of the dispatch center is based on a sliding window mechanism. The system presets a time period (e.g., 1 second or 3 seconds), and a new sliding window is generated after each time period. At the start of each sliding window, the dispatch center needs to determine the maximum number of SMS messages the entire system can send within that window. This total limit is not arbitrarily set, but is calculated based on a combination of external constraints, including: pre-set global rate limiting policies, rate limits of each operator's gateway, and purchased SMS channel quotas. The dispatch center takes the minimum value among these constraints as the total number of SMS messages that can be sent in the current window.

[0040] Step 104: Based on the real-time health score of each SMS sending service node, dynamically allocate the total number of SMS messages in the current sliding window to each SMS sending service node, and generate SMS sharding tasks corresponding to each SMS sending service node.

[0041] This is the core allocation step of the invention. The scheduling center dynamically allocates the total number of windows determined in step 103 based on the total health score of all nodes calculated in step 102. The specific allocation strategy is proportional. For example, assuming the current total number of windows is 10,000, and there are three nodes A, B, and C in the cluster with total health scores of 90, 60, and 50 respectively, for a total score of 200, then node A will receive an allocation of (90 / 200) * 10,000 = 4,500 tasks; node B will receive (60 / 200) * 10,000 = 3,000 tasks; and node C will receive 2,500 tasks. This method ensures that high-performance nodes with high health scores are allocated more tasks, while nodes with low health scores are automatically offloaded.

[0042] Step 105: Distribute the SMS segmentation task to the task queue of the corresponding node so that the node can execute SMS sending.

[0043] Based on the allocation results in step 104, the dispatch center retrieves the corresponding number of numbers from the pool of numbers to be sent, generates specific SMS segmentation tasks, and distributes these tasks to the task queues of the corresponding nodes to execute SMS sending.

[0044] Step 106 (optional): After sending an SMS, the SMS sending service node collects and reports the SMS sending receipt; based on the SMS sending receipt and the latest multi-dimensional operation indicator data, it updates the real-time health score of each SMS sending service node for task allocation in the next sliding window.

[0045] Furthermore, this method includes a closed-loop feedback optimization step. After a node sends an SMS message by calling the operator's API, it collects sending receipts (including success, failure, and delay information) and reports them, along with its latest real-time operational metrics data, to the scheduling center. The scheduling center uses this new information to execute step 102 again, updating the total health score of each node. Thus, when the next sliding window arrives, the scheduling center can allocate resources based on the latest health status, achieving continuous self-correction and optimization of the allocation strategy.

[0046] Furthermore, the method of this invention can achieve multi-parameter hot updates through a distributed configuration center. To further enhance the system's flexibility and maintainability, this embodiment introduces a distributed configuration center. System operators can dynamically adjust multiple key parameters through the configuration center without restarting any services. First, the "weighting system" mentioned in step 102 can be adjusted; for example, when network jitter becomes the primary issue, the weight of the "network latency" indicator can be increased. Second, the "batch size" of SMS messages sent by nodes can be adjusted; for example, during peak business periods, the number of messages sent per node call can be temporarily increased from 1000 to 2000 to fully utilize the potential of high-performance nodes, or the batch size can be reduced to alleviate pressure when the system load is too high. Third, the "time period" of the sliding window can be adjusted; for example, during peak business traffic periods, the window period can be shortened from 3 seconds to 1 second for more precise task scheduling and faster response to node status changes; during off-peak traffic periods, the window period can be appropriately extended to reduce the computational overhead of the scheduling center. This multi-parameter hot update mechanism enables the system to seamlessly adapt to constantly changing business needs and operating environments, significantly enhancing the system's resilience and adaptability.

[0047] In summary, this embodiment achieves a highly efficient, stable, and adaptive SMS segmentation scheduling scheme by real-time collection of multi-dimensional indicators, calculation of health scores, dynamic allocation of tasks proportionally using a sliding window, and supplemented by closed-loop feedback and hot update mechanisms. This scheme effectively overcomes the drawbacks of traditional static scheduling strategies and significantly improves the overall processing efficiency and resource utilization in large-scale SMS sending scenarios.

[0048] Obviously, the described embodiments are only a part of the embodiments of this application, not all of them. Unless otherwise specified, the embodiments and features described and illustrated in this application can be combined with each other. The components of the embodiments of this application generally described and illustrated in the accompanying drawings can be arranged and designed in various different configurations. Therefore, the detailed description of the embodiments of this application is not intended to limit the scope of the claimed application, but merely to illustrate selected embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are within the scope of protection of this application.

Claims

1. A real-time sliding window SMS segmentation scheduling method based on multidimensional health scores, characterized in that: include: Real-time collection of multi-dimensional operational metrics data from each SMS sending service node; According to the preset weighting system, the multi-dimensional operation index data is standardized and weighted to obtain the real-time health score of each SMS sending service node. Based on a preset time period, a sliding window is generated, and the total number of SMS messages that can be sent in the current sliding window is determined. Based on the real-time health score of each SMS sending service node, the total number of SMS messages in the current sliding window is dynamically allocated to each SMS sending service node, and SMS sharding tasks corresponding to each SMS sending service node are generated. The SMS segmentation task is distributed to the task queue of the corresponding node so that the node can execute SMS sending.

2. The real-time sliding window SMS segmentation scheduling method based on multi-dimensional health scores according to claim 1, characterized in that: The multidimensional operational metrics data include at least two of the following metrics: CPU utilization, memory usage, garbage collection (GC) counts and time, network latency, I / O load, sending error rate, and task queue length.

3. The real-time sliding window SMS segmentation scheduling method based on multi-dimensional health scores according to claim 1, characterized in that: Based on a preset weighting system, the multi-dimensional operational indicator data are standardized and weighted to obtain the real-time health score of each node, specifically including: Each indicator with different dimensions is converted into a unified scoring range to obtain the standardized value of each indicator. The total real-time health score of the SMS sending service node is calculated by multiplying the standardized values ​​of each indicator by their corresponding preset weights and then summing the results.

4. The real-time sliding window SMS segmentation scheduling method based on multi-dimensional health scores according to claim 1, characterized in that: Determine the total number of text messages that can be sent for the current sliding window, specifically including: Calculate the total number of SMS messages that can be sent in the current sliding window based on the global rate limiting policy, operator rate limits, and SMS channel quota.

5. The real-time sliding window SMS segmentation scheduling method based on multi-dimensional health scores according to claim 1, characterized in that: Based on the real-time health score of each node, the total number of SMS messages in the current sliding window is dynamically allocated to each node, specifically including: The total number of SMS messages is allocated to each SMS sending service node based on the proportion of the total real-time health score of each node to the sum of the total health scores of all SMS sending service nodes.

6. The real-time sliding window SMS segmentation scheduling method based on multi-dimensional health scores according to claim 1, characterized in that: The method further includes: After sending an SMS message, the SMS sending service node collects and reports the SMS sending receipt. Based on the SMS delivery receipts and the latest multi-dimensional operational metrics data, update the real-time health score of each SMS sending service node for task allocation in the next sliding window.

7. The real-time sliding window SMS segmentation scheduling method based on multi-dimensional health scores according to claim 1, characterized in that: The preset weighting system, the time period of the sliding window, and the batch size of each SMS sending service node when executing SMS sending are hot-updated through a distributed configuration center; wherein, the batch size is used to define the number of SMS messages sent by the SMS sending service node in a single call.