Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the present invention is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
Fig. 1 is an application environment diagram of a processing method of pushing information in one embodiment. Referring to fig. 1, the push information processing method is applied to a push information processing system. The processing system for pushing information includes a terminal 110 and a server 120, wherein the terminal 110 is connected to the server 120 through a network. The terminal 110 may be a fixed terminal, which may specifically be at least one of a printer, a scanner, and a monitor, or a mobile terminal, which may specifically be at least one of a tablet, a smartphone, a personal data assistant, and a digital camera.
Fig. 2 is a schematic diagram illustrating an internal structure of the server 120 in the information push processing system in fig. 1 according to an embodiment. As shown in fig. 2, the server 120 includes a processor, a nonvolatile storage medium, an internal memory, and a network interface, which are connected through a system bus. The processor of the server 120 is used to provide computing and control capabilities, to support the operation of the entire server 120, the memory is used to store data, code instructions, etc., and the network interface is used to communicate with the terminal 110 over a network. The memory stores at least one computer executable instruction, which can be executed by the processor to implement the push information processing method applicable to the server 120 provided in the embodiment of the present application. The Memory may include a non-volatile storage medium such as a magnetic disk, an optical disk, a Read-Only Memory (ROM), or a Random Access Memory (RAM). For example, in one embodiment, the memory includes a non-volatile storage medium and an internal memory; the nonvolatile storage medium stores an operating system and computer-executable instructions executable by the processor to implement the above-described push information processing method; the internal memory provides a cached execution environment for the operating system and computer-executable instructions in the non-volatile storage medium.
As shown in fig. 3, in an embodiment, a method for processing push information is provided, and this embodiment is exemplified by applying the method to the server 120 in the system for processing push information in fig. 1, where the method specifically includes the following steps:
s302, an information pushing task is obtained.
Specifically, the user inputs a user account in the terminal 110 to log in a push task creation page, and the user inputs a push information template identifier, a push message, and a user account list in the task creation page. The terminal 110 acquires a push information template identifier, a push message and a user account list in the task creation page, queries the push information template according to the acquired push information template identifier, and adds the acquired push message to the queried push information template to obtain information to be pushed. The terminal 110 generates a created information pushing task according to the information to be pushed and the user account list, and sends the created information pushing task to the server 120. The server 120 receives the information push task sent by the terminal 110.
In one embodiment, the terminal 110 obtains the push information template identifier, the push message, and the user account list in the task creation page, generates a push task creation instruction according to the obtained push information template identifier, the push message, and the user account list, and sends the push task creation instruction to the server 120. The server 120 extracts the push information template identifier, the push message and the user account list in the push task creation instruction, queries the push information template according to the extracted push information template identifier, adds the extracted push message to the queried push information template to obtain information to be pushed, and creates an information push task according to the information to be pushed and the user account list.
S304, judging whether the information pushing task is a batch pushing task.
Specifically, after obtaining the information push task, the server 120 extracts a push type identifier in the information push task, and determines whether the information push task is a batch push task according to the extracted push type identifier.
In one embodiment, after obtaining the information pushing task, the server 120 parses the information pushing task, queries whether a user account list exists in the information pushing task by parsing, and determines that the information pushing task is a batch pushing task if the user account list exists; and if not, judging that the information pushing task is a non-batch pushing task.
In one embodiment, if the information pushing task is determined to be a single pushing task, the information to be pushed and the user account in the information pushing task are extracted, and the extracted information to be pushed is pushed to the terminal logged in with the extracted user account.
Specifically, when determining that the information push task is a single push task, the server 120 parses the information push task, extracts information to be pushed and a user account in the information push task by parsing, and sends the extracted information to be pushed to a terminal logged in with the user account.
In an embodiment, when determining that the information push task is the current push task, the server 120 temporarily sets the batch push task, executes the single push task, readjusts the push time of the information push subtasks in batch push after detecting that the single push task is executed, and executes the information push subtasks according to the adjusted push time.
S306, if the information pushing task is judged to be the batch pushing task, extracting information to be pushed and a user account list in the information pushing task.
Specifically, if it is determined that the information push task is a batch push task, the server 120 parses the information push task, and extracts information to be pushed and a user account list in the information push task by parsing. The user account list comprises a plurality of user accounts, and the user accounts in the user list are target user accounts for pushing information to be pushed.
And S308, creating an information pushing subtask according to the information to be pushed and each user account in the user account list.
Specifically, the server 120 reads each user account in the user account list, and generates an information push subtask according to the message to be pushed and the read user account. The information pushing subtask is a pushing task for pushing information to be pushed according to each user account.
S310, obtaining the pushing idle time of the server and the pushing priority determining parameters corresponding to each information pushing subtask.
Specifically, the server 120 acquires a push idle time during which no push task is executed. After the information pushing subtask is generated, the server 120 obtains a pushing priority determination parameter according to the user account in the information pushing subtask and the pushing information template identifier corresponding to the information to be pushed. The push prioritization parameter includes at least one of age information, information click-through rate, and user preference. The time efficiency information can be early newspaper, late newspaper, noon newspaper and the like; the information click rate is the ratio of the information click quantity to the information push quantity; the user preference is the similarity between the user portrait label and the information to be pushed, and the higher the user preference is, the more the user is interested in the pushed information.
And S312, determining the pushing time of each information pushing subtask according to the obtained pushing priority determination parameter and the pushing idle time.
Specifically, the server 120 obtains the pushing idle time, determines the pushing sequence of each information pushing subtask according to the obtained pushing priority determination parameter, and determines the pushing time of each information pushing subtask according to the pushing sequence and the pushing idle time of each information pushing task. The push idle time refers to an idle time during which the server 120 does not execute the push task.
And S314, executing each information pushing subtask according to the determined pushing time.
Specifically, after determining the pushing time of each information pushing subtask, when detecting that the current time is the same as the pushing time of the information pushing subtask, the server 120 reads the information pushing subtask corresponding to the current time, extracts the user account and the information to be pushed in the read information pushing subtask, and sends the information to be pushed to the terminal logged in with the user account.
In one embodiment, the server 120 obtains the pushing idle time, adds the sorted information pushing subtasks to the information pushing queue in sequence, and reads the information pushing subtasks from the information pushing queue when detecting that the current time is the pushing idle time. The server 120 extracts the aging information of the message to be pushed in the information pushing subtask, detects whether the extracted aging information is matched with the current time, and if so, executes the read information pushing subtask.
In this embodiment, after the information push task is obtained, when it is determined that the information push task is a batch push task, information to be pushed and a user account list in the information push task are extracted, and an information push subtask is created according to the information to be pushed and each account in the user account list. The method comprises the steps of obtaining pushing idle time of a server and pushing priority determining parameters corresponding to information pushing subtasks, determining the pushing time of the information pushing subtasks according to the pushing idle time and the pushing idle time, carrying out reasonable scheduling on the information pushing subtasks, ensuring that the information pushing subtasks are executed according to the determined pushing time, avoiding the situation of information pushing congestion, and improving the information pushing efficiency.
As shown in fig. 4, in an embodiment, the step S310 further includes a step of acquiring a push priority determination parameter, where the step includes the following steps:
s402, obtaining the pushing idle time of the server, and extracting the pushing information template identification and the user account corresponding to the information to be pushed in each information pushing subtask.
Specifically, the server 120 has no push idle time for the push task to execute. The server 120 extracts the pushed information template identifier and the user account in each information pushing subtask. The information to be pushed is generated according to the information pushing template and the information to be added of the template, and the information to be added is the main information content of the information to be pushed.
S404, acquiring aging information, information click rate and user preference according to the extracted pushed information template identification and the user account, and taking the acquired aging information, information click rate and user preference as push priority determination parameters.
Specifically, the server 120 stores therein a push information template identifier and a push priority determination parameter corresponding to the user account. After extracting the pushed information template identifier, the server 120 queries the aging information and the information click rate corresponding to the extracted pushed information template identifier; after extracting the user account, the server 120 queries the information click rate and the user preference label corresponding to the extracted user account, extracts the keyword in the information to be pushed, calculates the information similarity according to the extracted keyword and the user preference label, and calculates the calculated information similarity as the user preference.
The server 120 stores the pushed information template identifier or the information pushing times corresponding to each user account and the click times of the pushed information, the server 120 obtains an information click rate by dividing the information pushing times by the click times of the pushed information, and the calculated information click rate and the pushed information template identifier or each user account are stored correspondingly.
In this embodiment, by extracting the pushed information template identifier and the user account from the information pushing subtasks, corresponding aging information, information click rate, and user preference are obtained according to the pushed information template identifier and the user account, the obtained aging information, information click rate, and user preference are used as the pushing priority determination parameters, accuracy of the obtained pushing priority determination parameters is ensured, and the pushing sequence of each information pushing subtask is accurately determined according to the pushing priority determination parameters.
As shown in fig. 5, in an embodiment, the step S312 specifically includes a step of determining a pushing time of each information pushing subtask, where the step specifically includes the following steps:
and S502, calculating the pushing priority corresponding to each information pushing subtask according to the acquired aging information, the information click rate and the user preference.
Specifically, the server 120 obtains the time efficiency information and the information click rate corresponding to the information pushing template identifier, the information click rate corresponding to the user account in the information pushing subtask, and the user preference of the user corresponding to the user account for the information to be pushed, and performs weighted calculation on the obtained time efficiency information, the information click rate corresponding to the information pushing template identifier, the information click rate corresponding to the user account, and the user preference of the user corresponding to the user account for the information to be pushed to obtain the pushing priority of the information pushing subtask.
S504, sorting the information pushing subtasks according to the pushing priority.
Specifically, the server 120 obtains the push priorities of the information push subtasks by calculating the push priority determination parameters, and sorts the push priorities of the information push subtasks according to the push priorities to obtain the sorted information push subtasks.
S506, determining the pushing time of each information pushing subtask according to the sorted information pushing subtasks and the pushing idle time.
Specifically, the server 120 obtains the pushing idle time, and determines the pushing time of each information pushing subtask in the sorted information pushing subtasks according to the obtained idle time.
In the embodiment, the pushing priority of each information pushing subtask is calculated according to the acquired aging information, the information click rate and the user preference, each information pushing subtask is sequenced according to the pushing priority, and the pushing time of each information pushing subtask is determined according to the sequenced information pushing subtask and the pushing idle time, so that the information pushing accuracy is improved, and the information is pushed at a proper time.
As shown in fig. 6, in an embodiment, after S314, a step of updating the information click rate is further specifically included, where the step specifically includes the following steps:
s602, receiving a click notice of push information sent by each terminal.
Specifically, the terminal 110 displays the push information notification according to the received push after receiving the push information pushed by the server 120. The user may view the pushed information by opening the application, or may click on the displayed pushed information notification to view the pushed information. After detecting the click viewing instruction for the push information, the terminal 110 generates a push information click notification according to the push information template identifier in the push information, where the information click notification further includes a user account logged in the terminal 110, and the terminal 110 sends the generated push information click notification to the server 120.
S604, extracting the user account and the push information template identifier in the push information click notification.
Specifically, the server 120 receives the push information click notification sent by the terminal 110, parses the push information click notification, and extracts the user account and the push information template identifier in the push information click notification through parsing.
And S606, updating the extracted user account and the information click rate corresponding to the pushed information template identification according to the pushed information click notification.
Specifically, the server 120 stores the information pushing times corresponding to the pushed information template identifier or each user account and the number of clicks of the pushed information. The server 120 clicks the user account and the pushed information template identifier in the notification according to the extracted pushed information, updates the number of clicks of the pushed information corresponding to the user account and the pushed information template identifier in the notification according to the pushed information click notification, recalculates the information click rate according to the number of clicks of the pushed information and the number of clicks of the information corresponding to the user account and the pushed information template identifier, and replaces the current information click rate corresponding to the user account and the pushed information template identifier with the recalculated information click rate.
In the embodiment, the receiving terminal sends the push information click notification, the information click rate corresponding to the user account and the push information template identifier is updated according to the push information click notification, the accuracy and the real-time performance of the information click rate are ensured, the push sequence of each information push subtask is determined according to the push priority determination parameters including the information click rate, and the accuracy of determining the push sequence of each information push subtask is improved.
As shown in fig. 7, in an embodiment, an apparatus 700 for processing push information is provided, where the apparatus 700 specifically includes: a task obtaining module 702, a task judging module 704, a task parsing module 706, a task creating module 708, a parameter obtaining module 710, a time determining module 712, and a task executing module 714.
A task obtaining module 702, configured to obtain an information pushing task.
The task determining module 704 is configured to determine whether the information pushing task is a batch pushing task.
And the task analysis module 706 is configured to, if it is determined that the information pushing task is a batch pushing task, extract information to be pushed and a user account list in the information pushing task.
And the task creating module 708 is configured to create an information pushing subtask according to the information to be pushed and each user account in the user account list.
The parameter obtaining module 710 is configured to obtain a push idle time of the server and a push priority determination parameter corresponding to each information push subtask.
And a time determining module 712, configured to determine, according to the obtained push priority determining parameter and the push idle time, the push time of each information push subtask.
And the task execution module 714 is configured to execute each information pushing subtask according to the determined pushing time.
In an embodiment, the task execution module is further configured to, if it is determined that the information push task is a single push task, extract information to be pushed and a user account in the information push task, and push the extracted information to be pushed to a terminal logged in with the extracted user account.
In this embodiment, after the information push task is obtained, when it is determined that the information push task is a batch push task, information to be pushed and a user account list in the information push task are extracted, and an information push subtask is created according to the information to be pushed and each account in the user account list. The method comprises the steps of obtaining pushing idle time of a server and pushing priority determining parameters corresponding to information pushing subtasks, determining the pushing time of the information pushing subtasks according to the pushing idle time and the pushing idle time, carrying out reasonable scheduling on the information pushing subtasks, ensuring that the information pushing subtasks are executed according to the determined pushing time, avoiding the situation of information pushing congestion, and improving the information pushing efficiency.
In one embodiment, the parameter obtaining module 710 is further configured to obtain a pushing idle time of the server, and extract a pushing information template identifier and a user account in each information pushing subtask; and acquiring aging information, an information click rate and user preference corresponding to the extracted pushed information template identifier and the user account, and taking the acquired aging information, the acquired information click rate and the acquired user preference as push priority determination parameters.
In this embodiment, by extracting the pushed information template identifier and the user account from the information pushing subtasks, corresponding aging information, information click rate, and user preference are obtained according to the pushed information template identifier and the user account, the obtained aging information, information click rate, and user preference are used as the pushing priority determination parameters, accuracy of the obtained pushing priority determination parameters is ensured, and the pushing sequence of each information pushing subtask is accurately determined according to the pushing priority determination parameters.
As shown in fig. 8, in an embodiment, the time determination module 712 specifically includes the following: a push parameter calculation module 712a, a push task ordering module 712b, and a push time determination module 712 c.
And the pushing parameter calculating module 712a is configured to calculate, according to the obtained aging information, the information click rate, and the user preference, a pushing priority corresponding to each information pushing subtask.
And the push task ordering module 712b is configured to order each information push subtask according to the push priority.
And a pushing time determining module 712c, configured to determine pushing time of each information pushing subtask according to the sorted information pushing subtasks and pushing idle time.
In the embodiment, the pushing priority of each information pushing subtask is calculated according to the acquired aging information, the information click rate and the user preference, each information pushing subtask is sequenced according to the pushing priority, and the pushing time of each information pushing subtask is determined according to the sequenced information pushing subtask and the pushing idle time, so that the information pushing accuracy is improved, and the information is pushed at a proper time.
As shown in fig. 9, in an embodiment, the apparatus 700 for processing push information specifically further includes: a notification reception module 716, a notification parsing module 718, and a click-through rate update module 720.
A notification receiving module 716, configured to receive a click notification of push information sent by each terminal.
The notification parsing module 718 is configured to extract the user account and the pushed information template identifier in the pushed information click notification.
And the click rate updating module 720 updates the extracted information click rate corresponding to the user account and the pushed information template identifier according to the pushed information click notification.
In the embodiment, the receiving terminal sends the push information click notification, the information click rate corresponding to the user account and the push information template identifier is updated according to the push information click notification, the accuracy and the real-time performance of the information click rate are ensured, the push sequence of each information push subtask is determined according to the push priority determination parameters including the information click rate, and the accuracy of determining the push sequence of each information push subtask is improved.
A computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the following steps when executing the computer program: acquiring an information pushing task; judging whether the information pushing task is a batch pushing task or not; if the information pushing task is judged to be a batch pushing task, extracting information to be pushed and a user account list in the information pushing task; creating an information pushing subtask according to the information to be pushed and each user account in the user account list; acquiring pushing idle time of a server and a pushing priority determining parameter corresponding to each information pushing subtask; determining the pushing time of each information pushing subtask according to the obtained pushing priority determining parameter and the pushing idle time; and executing each information pushing subtask according to the determined pushing time.
In one embodiment, the processor, when executing the computer program, further performs the steps of: and if the information pushing task is judged to be a single pushing task, extracting the information to be pushed and the user account in the information pushing task, and pushing the extracted information to be pushed to the terminal logged in by the extracted user account.
In one embodiment, obtaining the push idle time of the server and the push priority determination parameter corresponding to each information push subtask includes: acquiring the pushing idle time of a server, and extracting a pushing information template identifier and a user account corresponding to information to be pushed in each information pushing subtask; and acquiring aging information, an information click rate and user preference according to the extracted pushed information template identifier and the user account, and taking the acquired aging information, the acquired information click rate and the acquired user preference as push priority determination parameters.
In one embodiment, determining the push time of each information push subtask according to the obtained push priority determination parameter and the push idle time includes: calculating the pushing priority corresponding to each information pushing subtask according to the acquired aging information, the information click rate and the user preference; sequencing all information pushing subtasks according to the pushing priority; and determining the pushing time of each information pushing subtask according to the sorted information pushing subtasks and the pushing idle time.
In one embodiment, the processor, when executing the computer program, further performs the steps of: receiving a push information click notification sent by each terminal; extracting a user account and a pushed information template identifier in the pushed information click notification; and updating the extracted user account and the information click rate corresponding to the pushed information template identification according to the pushed information click notification.
In this embodiment, after the information push task is obtained, when it is determined that the information push task is a batch push task, information to be pushed and a user account list in the information push task are extracted, and an information push subtask is created according to the information to be pushed and each account in the user account list. The method comprises the steps of obtaining pushing idle time of a server and pushing priority determining parameters corresponding to information pushing subtasks, determining the pushing time of the information pushing subtasks according to the pushing idle time and the pushing idle time, carrying out reasonable scheduling on the information pushing subtasks, ensuring that the information pushing subtasks are executed according to the determined pushing time, avoiding the situation of information pushing congestion, and improving the information pushing efficiency.
One or more storage media storing computer-executable instructions that, when executed by one or more processors, cause the one or more processors to perform the steps of: acquiring an information pushing task; judging whether the information pushing task is a batch pushing task or not; if the information pushing task is judged to be a batch pushing task, extracting information to be pushed and a user account list in the information pushing task; creating an information pushing subtask according to the information to be pushed and each user account in the user account list; acquiring pushing idle time of a server and a pushing priority determining parameter corresponding to each information pushing subtask; determining the pushing time of each information pushing subtask according to the obtained pushing priority determining parameter and the pushing idle time; and executing each information pushing subtask according to the determined pushing time.
In one embodiment, the processor further performs the steps of: and if the information pushing task is judged to be a single pushing task, extracting the information to be pushed and the user account in the information pushing task, and pushing the extracted information to be pushed to the terminal logged in by the extracted user account.
In one embodiment, obtaining the push idle time of the server and the push priority determination parameter corresponding to each information push subtask includes: acquiring the pushing idle time of a server, and extracting a pushing information template identifier and a user account corresponding to information to be pushed in each information pushing subtask; and acquiring aging information, an information click rate and user preference according to the extracted pushed information template identifier and the user account, and taking the acquired aging information, the acquired information click rate and the acquired user preference as push priority determination parameters.
In one embodiment, determining the push time of each information push subtask according to the obtained push priority determination parameter and the push idle time includes: calculating the pushing priority corresponding to each information pushing subtask according to the acquired aging information, the information click rate and the user preference; sequencing all information pushing subtasks according to the pushing priority; and determining the pushing time of each information pushing subtask according to the sorted information pushing subtasks and the pushing idle time.
In one embodiment, the processor further performs the steps of: receiving a push information click notification sent by each terminal; extracting a user account and a pushed information template identifier in the pushed information click notification; and updating the extracted user account and the information click rate corresponding to the pushed information template identification according to the pushed information click notification.
In this embodiment, after the information push task is obtained, when it is determined that the information push task is a batch push task, information to be pushed and a user account list in the information push task are extracted, and an information push subtask is created according to the information to be pushed and each account in the user account list. The method comprises the steps of obtaining pushing idle time of a server and pushing priority determining parameters corresponding to information pushing subtasks, determining the pushing time of the information pushing subtasks according to the pushing idle time and the pushing idle time, carrying out reasonable scheduling on the information pushing subtasks, ensuring that the information pushing subtasks are executed according to the determined pushing time, avoiding the situation of information pushing congestion, and improving the information pushing efficiency.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by a computer program, which can be stored in a computer-readable storage medium, and can include the processes of the embodiments of the methods described above when the computer program is executed. The storage medium may be a non-volatile storage medium such as a magnetic disk, an optical disk, a Read-Only Memory (ROM), or a Random Access Memory (RAM).
The technical features of the embodiments described above may be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the embodiments described above are not described, but should be considered as being within the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present invention, and the description thereof is more specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the inventive concept, which falls within the scope of the present invention. Therefore, the protection scope of the present patent shall be subject to the appended claims.