Resource pre-pushing method and device, storage medium and program product
By analyzing the historical online information of the terminal and assigning matching resource pre-push tasks to it, the problem of excessive server burden during peak download periods in the existing technology is solved, and more efficient resource allocation and server load management are achieved.
Patent Information
- Application Number
- CN202411737051.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-29
- Publication Date
- 2025-03-04
AI Technical Summary
In the existing resource pre-push technology, other terminals may need to obtain resources directly from the server when acquiring resources, resulting in excessive burden on the server, especially during peak download periods.
By analyzing the terminal's historical online information, determining its online probability during the peak download period, and allocating matching target resource pre-push tasks to the terminal, so that the terminal can download resources in advance before the peak download period, thereby reducing the burden on the server.
It effectively reduces the burden on the server during peak download periods, improves the system's processing capacity and efficiency, and reduces the terminal's dependence on the server.
Smart Images

Figure CN119562095A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of Internet technology, and in particular to a method, device, storage medium and program product for pre-pushing resources. Background Art
[0002] The resource pre-push system is a system in which the server sends resources (such as audio and video resources, game materials, etc.) to the terminal in advance. When the terminal actually needs these resources, it does not need to send a request to the server, but can directly obtain them from the cache.
[0003] In the related art, the resource pre-pushing method is that the server sends the resources to be pre-pushed to some terminals in advance, and these terminals can cache these resources in advance. When these resources are actually needed, they do not need to send requests to the server again, but can directly obtain them from the cache. And when other terminals need these resources, in addition to obtaining resources from the server, they can also obtain resources from these terminals.
[0004] However, when other terminals need these resources, the pre-pushed terminal may be offline, and the other terminals still need to send requests to the server to obtain these resources. In this way, when multiple other terminals send requests to the server at the same time, the server will be overloaded. Summary of the invention
[0005] In order to solve the related technical problems, the present disclosure provides a method, device, equipment, storage medium and program product for pre-pushing resources. The technical solution is as follows:
[0006] In a first aspect, the present disclosure provides a method for pre-pushing resources, the method comprising:
[0007] When receiving a resource pre-push task claiming request sent by a terminal, determining each candidate resource pre-push task, and determining a peak download period of the pre-push resource corresponding to each candidate resource pre-push task;
[0008] Determining the online probability of the terminal during the peak download period based on the historical online information of the terminal;
[0009] Determine, among the candidate resource pre-push tasks, a target resource pre-push task that matches the online probability;
[0010] The target resource pre-push task is assigned to the terminal, so that the terminal downloads the pre-push resource corresponding to the target resource pre-push task before the peak download period corresponding to the target resource pre-push task arrives.
[0011] In a possible implementation, determining the online probability of the terminal in the peak download period based on the historical online information of the terminal includes:
[0012] Acquire the online status of the terminal in multiple reference time periods within a specified historical duration, wherein the reference time period has the same starting time point clock as the peak download time period and the same ending time point clock;
[0013] Based on the online states of the multiple reference time periods, an online probability of the terminal in the peak downloading time period is determined.
[0014] In a possible implementation manner, the online state includes a first state or a second state, the first state indicates that the terminal is continuously online within a corresponding reference period, and the second state indicates that the terminal is not continuously online within the corresponding reference period.
[0015] In a possible implementation, the specified historical duration includes multiple sub-durations;
[0016] Determining the online probability of the terminal in the peak download period based on the online status of the multiple reference time periods includes:
[0017] For each sub-duration, determine the number of reference time periods corresponding to the first state within the sub-duration, determine the total number of reference time periods included in the sub-duration, and determine the proportion of the number in the total number;
[0018] Determine a weighted value based on the proportion corresponding to each sub-duration and the pre-stored weight corresponding to each sub-duration;
[0019] Based on the weighted value, the online probability of the terminal in the peak download period is determined.
[0020] In a possible implementation, determining the online probability of the terminal in the peak download period based on the online statuses of the multiple reference time periods includes:
[0021] Based on the online states of the multiple reference time periods, respectively determine an online score corresponding to each reference time period, wherein the first state corresponds to a first online score, the second state corresponds to a second online score, and the first online score is greater than the second online score;
[0022] Determine a weighted value based on the online score corresponding to each reference time period and the pre-stored weight corresponding to each reference time period;
[0023] Based on the weighted value, the online probability of the terminal in the peak download period is determined.
[0024] In a possible implementation, the method further includes:
[0025] Determine the pre-push priority of the pre-push resources corresponding to each of the candidate resource pre-push tasks;
[0026] The step of determining a target resource pre-push task that matches the online probability among the candidate resource pre-push tasks includes:
[0027] Based on the pre-push priorities of the pre-push resources corresponding to the candidate resource pre-push tasks, a target resource pre-push task matching the online probability is determined among the candidate resource pre-push tasks.
[0028] In a possible implementation, determining a target resource pre-push task that matches the online probability among the candidate resource pre-push tasks based on the pre-push priority of the pre-push resource corresponding to each of the candidate resource pre-push tasks includes:
[0029] Determine the target pre-push priority corresponding to the online probability range to which the online probability belongs based on the pre-stored correspondence between the online probability range and the pre-push priority;
[0030] Among the candidate resource pre-push tasks, a candidate resource pre-push task having the target pre-push priority is determined as the target resource pre-push task matching the online probability.
[0031] In a second aspect, a device for pre-pushing resources is provided, the device comprising:
[0032] A determination module is used to determine each candidate resource pre-push task and the peak download period of the pre-push resource corresponding to each candidate resource pre-push task when receiving a resource pre-push task claiming request sent by the terminal; determine the online probability of the terminal in the peak download period based on the historical online information of the terminal; and determine the target resource pre-push task that matches the online probability among each candidate resource pre-push task;
[0033] The allocation module is used to allocate the target resource pre-push task to the terminal, so that the terminal downloads the pre-push resource corresponding to the target resource pre-push task before the peak download period corresponding to the target resource pre-push task arrives.
[0034] In a possible implementation manner, the determining module is used to:
[0035] Acquire the online status of the terminal in multiple reference time periods within a specified historical duration, wherein the reference time period has the same starting time point clock as the peak download time period and the same ending time point clock;
[0036] Based on the online states of the multiple reference time periods, an online probability of the terminal in the peak downloading time period is determined.
[0037] In a possible implementation manner, the online state includes a first state or a second state, the first state indicates that the terminal is continuously online within a corresponding reference period, and the second state indicates that the terminal is not continuously online within the corresponding reference period.
[0038] In a possible implementation, the specified historical duration includes multiple sub-durations;
[0039] The determining module is used to:
[0040] For each sub-duration, determine the number of reference time periods corresponding to the first state within the sub-duration, determine the total number of reference time periods included in the sub-duration, and determine the proportion of the number in the total number;
[0041] Determine a weighted value based on the proportion corresponding to each sub-duration and the pre-stored weight corresponding to each sub-duration;
[0042] Based on the weighted value, the online probability of the terminal in the peak download period is determined.
[0043] In a possible implementation manner, the determining module is used to:
[0044] Based on the online states of the multiple reference time periods, respectively determine an online score corresponding to each reference time period, wherein the first state corresponds to a first online score, the second state corresponds to a second online score, and the first online score is greater than the second online score;
[0045] Determine a weighted value based on the online score corresponding to each reference time period and the pre-stored weight corresponding to each reference time period;
[0046] Based on the weighted value, the online probability of the terminal in the peak download period is determined.
[0047] In a possible implementation, the determining module is further configured to:
[0048] Determine the pre-push priority of the pre-push resources corresponding to each of the candidate resource pre-push tasks;
[0049] Based on the pre-push priorities of the pre-push resources corresponding to the candidate resource pre-push tasks, a target resource pre-push task matching the online probability is determined among the candidate resource pre-push tasks.
[0050] In a possible implementation manner, the determining module is used to:
[0051] Determine the target pre-push priority corresponding to the online probability range to which the online probability belongs based on the pre-stored correspondence between the online probability range and the pre-push priority;
[0052] Among the candidate resource pre-push tasks, a candidate resource pre-push task having the target pre-push priority is determined as the target resource pre-push task matching the online probability.
[0053] In a third aspect, a computer device is provided, comprising a memory and a processor, wherein the memory is used to store computer instructions, and the processor executes the computer instructions stored in the memory so that the computer device executes the method provided by the first aspect and its possible implementation methods.
[0054] In a fourth aspect, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computer program code. When the computer program code is executed by a computer device, the computer device executes the method provided by the first aspect and its possible implementation methods.
[0055] In a fifth aspect, a computer program product is provided. The computer program product includes a computer program code. When the computer program code is executed by a computer device, the computer device executes the method provided by the first aspect and its possible implementation methods.
[0056] In the disclosed embodiment, the server allocates a suitable target resource pre-push task to the terminal according to the online probability of the terminal during the peak download period. The terminal can be called a pre-push terminal, which can better ensure the online possibility of the terminal during the peak download period. When the peak download period arrives, a large number of terminals download resources from the server, and the server is likely to be in a fully loaded state. At this time, the corresponding pre-push terminal is more likely to be online. In this way, other terminals can download the target resource pre-push task from the pre-push terminal without occupying the server's bandwidth and other resources, which can reduce the burden on the server. BRIEF DESCRIPTION OF THE DRAWINGS
[0057] Figure 1 It is a structural diagram of a resource pre-push system provided by an embodiment of the present disclosure;
[0058] Figure 2 is a structural diagram of a server provided by an embodiment of the present disclosure;
[0059] Figure 3 is a schematic diagram of the structure of a terminal provided by an embodiment of the present disclosure;
[0060] Figure 4 It is a schematic diagram of a processing flow of a method for pre-pushing resources provided by an embodiment of the present disclosure;
[0061] Figure 5 is a schematic diagram of a processing flow for determining an online probability provided by an embodiment of the present disclosure;
[0062] Figure 6 is a schematic diagram of a processing flow for determining an online probability provided by an embodiment of the present disclosure;
[0063] Figure 7 It is a schematic diagram of a processing flow of determining a target resource pre-push task that matches an online probability provided by an embodiment of the present disclosure;
[0064] Figure 8 It is a structural diagram of a resource pre-push device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0065] The embodiment of the present disclosure provides a method for pre-pushing resources, which can be executed by a pre-pushing resource system. The pre-pushing resource system can be composed of a server 110 and multiple terminals 120. The system architecture diagram can be as follows: Figure 1 shown.
[0066] The server 110 is used to complete the main processing work in the resource pre-push process. Multiple terminals 120 are used to receive resources to be pre-pushed, and to use the resources and share the resources with other terminals. Terminal 120 refers to a terminal device, and different types of applications can be run on the terminal device. Among them, a terminal device running a game application can also be called a game terminal, a terminal device running an audio and video application can also be called an audio and video playback terminal, and a terminal device running an instant messaging application can also be called an instant messaging terminal, etc. The present disclosure embodiment is described in detail using an audio playback terminal as an example, and other situations are similar and will not be repeated. The terminal device can be a smart phone, a tablet computer, a computer, a wearable device, etc.
[0067] For example Figure 2 As shown, the server 110 may include a processor 210 , a memory 220 , a communication component 230 , and the like.
[0068] The processor 210 may be a central processing unit (CPU) or a system on chip (SoC), etc. The processor 210 may be used to execute various instructions or data information involved in the method, for example, determining the online probability of the terminal in the target time period, etc.
[0069] The memory 220 may include various volatile memories or non-volatile memories, such as a solid state disk (SSD), a dynamic random access memory (DRAM), etc. The memory 220 may be used to store pre-stored data, intermediate data, and result data in content type conversion and display processing, for example, storing historical online information of the terminal, etc.
[0070] The communication component 230 may be a wired network connector, a wireless fidelity (WiFi) module, a Bluetooth module, a cellular network communication module, etc. The communication component 230 may be used to transmit data with other devices, which may be servers or other terminal devices, etc. For example, receiving a pre-push request from a terminal, etc.
[0071] For example Figure 3 As shown, the terminal 120 may include a processor 310, a memory 320, a communication component 330, and the like.
[0072] The processor 310 may be a CPU or a SoC, etc. The processor 310 may be used to execute various instructions or data information involved in the method, for example, to generate a pre-push request, etc.
[0073] The memory 320 may include various volatile memories or non-volatile memories, such as SSD, DRAM memory, etc. The memory 320 may be used to store pre-stored data, intermediate data, and result data in content type conversion and display processing, for example, storing target resource pre-push tasks, etc.
[0074] The communication component 330 may be a wired network connector, a WiFi module, a Bluetooth module, a cellular network communication module, etc. The communication component 330 may also be used to transmit data with other devices, which may be other servers or other terminals, etc. For example, a pre-push request may be sent to a server.
[0075] The resource pre-push system is a system in which the server sends resources (such as audio and video resources, game materials, etc.) to the terminal in advance. When the terminal actually needs these resources, it does not need to send a request to the server, but can directly obtain them from the cache. In the related art, the way of pre-pushing resources is that the server sends the resources to be pre-pushed to some terminals in advance. These terminals can cache these resources in advance. When these resources are actually needed, there is no need to send a request to the server, but can directly obtain them from the cache. And when other terminals need these resources, in addition to obtaining resources from the server, they can also obtain resources from these terminals. However, when other terminals need these resources, the terminals that have been pre-pushed may be offline, and other terminals still need to send requests to the server to obtain these resources. In this way, when multiple other terminals send requests to the server at the same time, it will cause the server to be overloaded.
[0076] Based on the above technical problems, the present disclosure provides a method for pre-pushing resources. The corresponding processing flow is described in detail below. Figure 4 As shown, the following steps may be included:
[0077] 401 , when receiving a resource pre-push task claiming request sent by a terminal, determining each candidate resource pre-push task, and determining a peak download period of the pre-push resource corresponding to each candidate resource pre-push task.
[0078] When the administrator predicts that the usage of a certain resource will increase during a certain period of time (peak download period), the resource can be added to the server's pre-push queue as a candidate pre-push resource, where the candidate pre-push resource is a resource to be pre-pushed, which can be game materials (pictures, characters, etc.) or audio and video resources (songs, TV series, etc.).
[0079] When a resource pre-push task claiming request sent by a terminal is received, each candidate resource pre-push task is determined, and a peak download period of the pre-push resource corresponding to each candidate resource pre-push task is determined.
[0080] 402 : Determine the online probability of the terminal during the peak download period based on the historical online information of the terminal.
[0081] There are many ways for the server to determine the online probability of the terminal during the peak download period.
[0082] Determination method 1: Based on the historical online information of the terminal, the server determines the number of reference time periods in which the terminal is continuously online in multiple reference time periods within a specified historical duration, wherein the specified historical duration can be preset by the administrator, such as 30 days, 40 days, etc. Determine the total number of all reference time periods included in the specified historical duration. Determine the probability of the terminal being online during the peak download period based on the proportion of the number in the total number. The reference period has the same clock as the starting time point of the peak download period, and the same clock as the ending time point. The online state includes a first state or a second state. The first state indicates that the terminal is continuously online during the corresponding reference period, and the second state indicates that the terminal is not continuously online during the corresponding reference period. Optionally, the administrator can preset an online state threshold, which can be a ratio threshold of the duration of the terminal being online during the peak download period exceeding the duration of the peak download period, and the ratio threshold can be 90%, 95%, etc.
[0083] For example, the specified historical duration is 40 days, the peak download period is 17:00-19:00, and the server determines that the number of reference periods in which the terminal is continuously online is 10 based on the historical online information of the terminal, and the total number of all reference periods included in the specified historical duration is 40, so the probability of the terminal being online during the peak download period is 25%.
[0084] Determination method 2: specifying the historical duration includes multiple sub-durations, each sub-duration has a different weight, and the weight corresponding to the sub-duration is negatively correlated with the time interval of the sub-duration relative to the peak download period. The specific processing process is described in detail in the following flow and will not be repeated here.
[0085] Determination method three: input the historical online information of each currently online terminal into the machine learning model to obtain the online probability of the terminal in the target period output by the machine learning model. The machine learning model can be a convolutional neural network, etc.
[0086] 403 : Determine a target resource pre-push task that matches the online probability among the candidate resource pre-push tasks.
[0087] 404 , allocating the target resource pre-push task to the terminal, so that the terminal downloads the pre-push resource corresponding to the target resource pre-push task before the peak download period corresponding to the target resource pre-push task arrives.
[0088] The server sends the download address of the target resource pre-push task to the terminal, and the terminal stores the target resource corresponding to the download address in the cache. If the terminal has not used the target resource pre-push task after the preset time, the target resource in the cache can be deleted. The preset time can be pre-set by the administrator.
[0089] In a possible implementation, the process of determining the terminal online probability may be as follows: Figure 5 As shown, the following steps are included:
[0090] 501, obtaining the online status of the terminal in multiple reference time periods within a specified historical duration.
[0091] Among them, the reference time period has the same starting time point clock as the peak download time period, and the same ending time point clock. The online state includes a first state or a second state. The first state indicates that the terminal is continuously online during the corresponding reference time period, and the second state indicates that the terminal is not continuously online during the corresponding reference time period.
[0092] Optionally, the administrator may preset an online status threshold, which may be a ratio threshold of the online duration of the terminal during the peak download period exceeding the duration of the peak download period, and the ratio threshold may be 90%, 95%, etc.
[0093] The server can store the online status of each terminal in a certain period of time for multiple consecutive days in the form of a circular queue, and the first character can be used to represent online and the second character can be used to represent offline. For example, if a terminal is online from 17:00 to 19:00 for 30 consecutive days, 1 can be used to represent online and 0 can be used to represent offline.
[0094] 502 : Determine the online probability of the terminal in the peak download period based on the online status of multiple reference time periods.
[0095] The specified historical duration may include multiple sub-durations, and the multiple sub-durations may be the same duration or different durations. For example, the specified historical duration is 40 days, and each sub-duration is 10 days, for a total of four sub-durations.
[0096] For each sub-duration, the server determines the number of reference time periods corresponding to the first state within the sub-duration, determines the total number of reference time periods included in the sub-duration, and determines the proportion of the number in the total number. For example, the target period is 17:00-19:00, the specified historical duration is 40 days, each sub-duration is 10 days, and there are four sub-durations in total. The first sub-duration has the smallest time interval relative to the peak download period. For the first sub-duration, the number of reference time periods corresponding to the first state is 5, and the total number of reference time periods included in the first sub-duration is 10, so the proportion is 50%. For the second sub-duration, the number of reference time periods corresponding to the first state is 2, and the total number of reference time periods included in the second sub-duration is 10, so the proportion is 20%. For the third sub-duration, the number of reference time periods corresponding to the first state is 4, and the total number of reference time periods included in the third sub-duration is 10, so the proportion is 40%. For the fourth sub-duration, the number of reference time periods corresponding to the first state is 3, and the total number of reference time periods included in the fourth sub-duration is 10, so the proportion is 30%, as shown in Table 1.
[0097] Table 1
[0098] Specify the history duration Proportion First sub-duration 50% Second sub-duration 20% The third sub-hour 40% The fourth sub-period 30% …… ……
[0099] Based on the proportion corresponding to each sub-duration and the pre-stored weight corresponding to each sub-duration, a weighted value is determined, wherein the weight corresponding to the sub-duration is negatively correlated with the time interval of the sub-duration relative to the peak download period. The corresponding relationship between the sub-duration and the weight can be shown in Table 2, for example. Based on the corresponding relationship between the sub-duration and the weight, the weight corresponding to each sub-duration can be determined. Thus, the weighted value is 50%×0.4+20%×0.3+40%×0.2+30%×0.1=0.37.
[0100] Table 2
[0101] Sub-time Weight First sub-duration 0.4 First sub-duration 0.3 First sub-duration 0.2 First sub-duration 0.1 …… ……
[0102] Based on the weighted value, determine the online probability of the terminal during the peak download period. The administrator can pre-set the online probability parameter, and use the product of the weighted value and the online probability parameter as the online probability of the terminal during the peak download period. The online probability parameter is negatively correlated with the difference between the specified historical duration and the time interval of the peak download period. The corresponding relationship between the online probability parameter and the difference between the above time intervals can be shown in Table 3. If the current online probability parameter is 0.8, the online probability of the terminal during the peak download period is 0.37×0.8=0.29.
[0103] Table 3
[0104] The difference in time interval Online probability parameters [0,5] 0.8 (5,10] 0.6 (10,30] 0.3 …… ……
[0105] Alternatively, another process for determining the online probability may be, for example, Figure 6 As shown, the following steps are included:
[0106] 601 : Based on the online status of multiple reference time periods, determine the online score corresponding to each reference time period.
[0107] The reference period and the peak download period have the same starting time point clock and the same ending time point clock, and the online state includes a first state or a second state, the first state indicates that the terminal is continuously online during the corresponding reference period, and the second state indicates that the terminal is not continuously online during the corresponding reference period. The first state corresponds to a first online score, and the second state corresponds to a second online score, and the first online score is greater than the second online score. For example, the first online score is 1, and the second online score is 0.
[0108] 602 : Determine a weighted value based on the online score corresponding to each reference time period and the pre-stored weight corresponding to each reference time period.
[0109] The weight corresponding to the reference period is negatively correlated with the time interval between the reference period and the peak download period. The processing method for determining the weight corresponding to the reference period in step 502 is similar and will not be repeated here.
[0110] For example, the weights of each reference period are 0.4, 0.3, 0.2 and 0.1 respectively, and the online scores of each reference period are 1, 0, 0 and 1 respectively, then the weighted value is 1×0.4+0+0+1×0.1=0.5.
[0111] 603: Determine the online probability of the terminal during the peak download period based on the weighted value.
[0112] The processing method of determining the online probability of the terminal in the peak download period based on the weighted value is similar to the processing method of the above step 502, which will not be repeated here.
[0113] In a possible implementation, the server may determine the pre-push priority of the pre-push resource corresponding to each candidate resource pre-push task, and determine the processing flow of the target resource pre-push task matching the online probability as follows: Figure 7 As shown, the following steps are included:
[0114] 701 : Determine a target pre-push priority corresponding to the online probability range to which the online probability belongs based on a pre-stored correspondence between the online probability range and the pre-push priority.
[0115] The administrator can also set the pre-push priority of the pre-push resources corresponding to each candidate resource pre-push task. The administrator can predict the popularity of the pre-push resources corresponding to each candidate resource pre-push task. The popularity refers to the number of times the terminal uses the resource. The higher the popularity of the resource, the higher the corresponding pre-push priority. In the correspondence between the online probability range and the pre-push priority, the probability size of the online probability range is positively correlated with the priority level of the pre-push priority. The correspondence between the online probability range and the pre-push priority can be shown in Table 4, for example.
[0116] Table 4
[0117] Online probability range Pre-push priority (80%,100%] high (60%,80%] middle (40%,60%] Low …… ……
[0118] After determining the online probability of the terminal, determine the online probability range to which the online probability belongs in the above correspondence, and then determine the target pre-push priority corresponding to the online probability range. Target resource pre-push task with target pre-push priority. For example, the online probability of a terminal is 90%, and the online probability range it belongs to is (80%, 100%], and the corresponding target pre-push priority is high.
[0119] 702 : Determine, among the candidate resource pre-push tasks, a candidate resource pre-push task having a target pre-push priority as a target resource pre-push task that matches the online probability.
[0120] For example, when the target pre-push priority is high, a candidate resource pre-push task with a high pre-push priority is selected from among the candidate resource pre-push tasks as the target resource pre-push task that matches the online probability.
[0121] Each candidate resource pre-push task may correspond to multiple terminals, and the administrator may pre-set the number of terminals (target number) to which each candidate resource pre-push task needs to be pre-pushed, such as 100, 1000, etc. Alternatively, the administrator may pre-set the proportion of terminals to which each candidate resource pre-push task needs to be pre-pushed to all terminals. For example, if there are generally 10,000 terminals requesting resources from the server, the administrator may set the candidate resource pre-push task to pre-push to 10% of the terminals.
[0122] According to the online range to which the online probability belongs, the terminal can be divided into three levels: high, medium, and low. The terminal with a high online probability can be assigned all candidate resource pre-push tasks, but the task priority is assigned from high to low. The terminal with a medium online probability can be assigned medium and low priority candidate resource pre-push tasks, and the terminal with a low online probability can be assigned low priority candidate resource pre-push tasks. For example, if the online probability of a terminal is 90%, the corresponding target pre-push priority can be high, medium, and low. For another example, if the online probability of a terminal is 70%, the corresponding target pre-push priority can be medium and low. For another example, if the online probability of a terminal is 50%, the corresponding target pre-push priority can be low.
[0123] In the disclosed embodiment, the server allocates a suitable target resource pre-push task to the terminal according to the online probability of the terminal during the peak download period. The terminal can be called a pre-push terminal, which can better ensure the online possibility of the terminal during the peak download period. When the peak download period arrives, a large number of terminals download resources from the server, and the server is likely to be in a fully loaded state. At this time, the corresponding pre-push terminal is more likely to be online. In this way, other terminals can download the target resource pre-push task from the pre-push terminal without occupying the server's bandwidth and other resources, which can reduce the burden on the server.
[0124] All the above optional technical solutions can be arbitrarily combined to form optional embodiments of the present disclosure, and will not be described in detail here.
[0125] Based on the same technical concept, the embodiment of the present disclosure also provides a resource pre-pushing device, such as Figure 8 As shown, the device comprises:
[0126] The determination module 810 is used to determine each candidate resource pre-push task and the peak download period of the pre-push resource corresponding to each candidate resource pre-push task when receiving the resource pre-push task claiming request sent by the terminal; determine the online probability of the terminal in the peak download period based on the historical online information of the terminal; and determine the target resource pre-push task that matches the online probability among each candidate resource pre-push task. Specifically, the processing functions of the above steps 401, 402, and 403, as well as other implicit steps, can be realized.
[0127] The allocation module 820 is used to allocate the target resource pre-push task to the terminal so that the terminal downloads the pre-push resource corresponding to the target resource pre-push task before the peak download period corresponding to the target resource pre-push task arrives. Specifically, the processing function of the above step 404 and other implicit steps can be realized.
[0128] In a possible implementation, the determination module 810 is used to: obtain the online status of the terminal in multiple reference time periods within a specified historical duration, wherein the reference time period has the same start time point clock as the peak download time period, and the same end time point clock; and determine the online probability of the terminal in the peak download time period based on the online status of the multiple reference time periods. Specifically, the processing function of the above step 402 and other implicit steps can be implemented.
[0129] In a possible implementation, the online state includes a first state or a second state, the first state indicates that the terminal is continuously online within a corresponding reference period, and the second state indicates that the terminal is not continuously online within the corresponding reference period. Specifically, the processing function of the above step 402 and other implicit steps can be implemented.
[0130] In a possible implementation, the designated historical duration includes multiple sub-durations; the determination module 810 is used to: for each sub-duration, determine the number of reference time periods corresponding to the first state in the sub-duration, determine the total number of reference time periods included in the sub-duration, and determine the proportion of the number in the total number; determine a weighted value based on the proportion corresponding to each sub-duration and the pre-stored weight corresponding to each sub-duration; determine the online probability of the terminal during the peak download period based on the weighted value. Specifically, the processing function of the above step 502 and other implicit steps can be implemented.
[0131] In a possible implementation, the determination module 810 is used to: determine the online score corresponding to each reference time period based on the online status of multiple reference time periods, wherein the first status corresponds to the first online score, the second status corresponds to the second online score, and the first online score is greater than the second online score; determine the weighted value based on the online score corresponding to each reference time period and the pre-stored weight corresponding to each reference time period; determine the online probability of the terminal in the peak download period based on the weighted value. Specifically, the processing functions of the above steps 601, 602, and 603, as well as other implicit steps, can be implemented.
[0132] In a possible implementation, the determination module 810 is further used to: determine the pre-push priority of the pre-push resources corresponding to each candidate resource pre-push task; based on the pre-push priority of the pre-push resources corresponding to each candidate resource pre-push task, determine the target resource pre-push task that matches the online probability among the candidate resource pre-push tasks. Specifically, the processing functions of the above steps 701 and 702, as well as other implicit steps, can be realized.
[0133] In a possible implementation, the determination module 810 is used to: determine the target pre-push priority corresponding to the online probability range to which the online probability belongs based on the pre-stored correspondence between the online probability range and the pre-push priority; and determine the candidate resource pre-push task with the target pre-push priority among the candidate resource pre-push tasks as the target resource pre-push task matching the online probability. Specifically, the processing functions of the above steps 701 and 702, as well as other implicit steps, can be implemented.
[0134] The above-mentioned determination module 810 and allocation module 820 may be implemented by a processor, or by a processor in conjunction with a memory and a display.
[0135] In the disclosed embodiment, the server allocates a suitable target resource pre-push task to the terminal according to the online probability of the terminal during the peak download period. The terminal can be called a pre-push terminal, which can better ensure the online possibility of the terminal during the peak download period. When the peak download period arrives, a large number of terminals download resources from the server, and the server is likely to be in a fully loaded state. At this time, the corresponding pre-push terminal is more likely to be online. In this way, other terminals can download the target resource pre-push task from the pre-push terminal without occupying the server's bandwidth and other resources, which can reduce the burden on the server.
[0136] It should be noted that: the resource pre-push device provided in the above embodiment only uses the division of the above functional modules as an example when performing resource pre-push. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the resource pre-push device and the resource pre-push method embodiment provided in the above embodiment belong to the same concept. The specific implementation process is detailed in the method embodiment and will not be repeated here.
[0137] The embodiments of the present disclosure also provide a computer-readable storage medium. The computer-readable storage medium may be any available medium that can be stored by a computing device or a data storage device such as a data center that includes one or more available media. The available medium may be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD (digital video disk)), or a semiconductor medium (e.g., a solid-state hard disk), etc. The computer-readable storage medium includes instructions that instruct a computing device to perform a business processing method, or instruct a computing device to pre-push resources.
[0138] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the protection scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for pre-pushing resources, characterized in that: The method comprises: When receiving a resource pre-push task claiming request sent by a terminal, determining each candidate resource pre-push task, and determining a peak download period of the pre-push resource corresponding to each candidate resource pre-push task; Determining the online probability of the terminal during the peak download period based on the historical online information of the terminal; Determine, among the candidate resource pre-push tasks, a target resource pre-push task that matches the online probability; The target resource pre-push task is assigned to the terminal, so that the terminal downloads the pre-push resource corresponding to the target resource pre-push task before the peak download period corresponding to the target resource pre-push task arrives.
2. The method according to claim 1, characterized in that: The determining, based on the historical online information of the terminal, the online probability of the terminal in the peak download period includes: Acquire the online status of the terminal in multiple reference time periods within a specified historical duration, wherein the reference time period has the same starting time point clock as the peak download time period and the same ending time point clock; Based on the online states of the multiple reference time periods, an online probability of the terminal in the peak downloading time period is determined.
3. The method according to claim 2, characterized in that The online status includes a first status or a second status, the first status indicates that the terminal is continuously online within a corresponding reference period, and the second status indicates that the terminal is not continuously online within the corresponding reference period.
4. The method according to claim 3, characterized in that: The specified historical duration includes multiple sub-durations; Determining the online probability of the terminal in the peak download period based on the online status of the multiple reference time periods includes: For each sub-duration, determine the number of reference time periods corresponding to the first state within the sub-duration, determine the total number of reference time periods included in the sub-duration, and determine the proportion of the number in the total number; Determine a weighted value based on the proportion corresponding to each sub-duration and the pre-stored weight corresponding to each sub-duration; Based on the weighted value, the online probability of the terminal in the peak download period is determined.
5. The method according to claim 3, characterized in that: The determining, based on the online statuses of the multiple reference time periods, the online probability of the terminal in the peak download period comprises: Based on the online states of the multiple reference time periods, respectively determine an online score corresponding to each reference time period, wherein the first state corresponds to a first online score, the second state corresponds to a second online score, and the first online score is greater than the second online score; Determine a weighted value based on the online score corresponding to each reference time period and the pre-stored weight corresponding to each reference time period; Based on the weighted value, the online probability of the terminal in the peak download period is determined.
6. The method according to any one of claims 1 to 5, characterized in that: The method further comprises: Determine the pre-push priority of the pre-push resources corresponding to each of the candidate resource pre-push tasks; The step of determining a target resource pre-push task that matches the online probability among the candidate resource pre-push tasks includes: Based on the pre-push priorities of the pre-push resources corresponding to the candidate resource pre-push tasks, a target resource pre-push task matching the online probability is determined among the candidate resource pre-push tasks.
7. The method according to claim 6, characterized in that The determining, based on the pre-push priority of the pre-push resource corresponding to each of the candidate resource pre-push tasks, a target resource pre-push task that matches the online probability among each of the candidate resource pre-push tasks includes: Determine the target pre-push priority corresponding to the online probability range to which the online probability belongs based on the pre-stored correspondence between the online probability range and the pre-push priority; Among the candidate resource pre-push tasks, a candidate resource pre-push task having the target pre-push priority is determined as the target resource pre-push task matching the online probability.
8. A computer device, characterized in that: The computer device comprises a memory and a processor, wherein the memory is used to store computer instructions; The processor executes the computer instructions stored in the memory to enable the computer device to perform the method according to any one of claims 1 to 7.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program code. When the computer program code is executed by a computer device, the computer device executes the method according to any one of claims 1 to 7.
10. A computer program product, characterized in that The computer program product comprises a computer program code. When the computer program code is executed by a computer device, the computer device executes the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Wireless network data booking download system and method
CN101141475A
Video resource pre-pushing method, device and system
CN109788326A
P2P active seed making method and system based on hot video pre-pushing
CN110012102A
Application resource downloading method and related product
CN110832454A
Resource distribution method and device, cloud server, electronic equipment and storage medium
CN117459536A