CN110362736B - Information pushing method, device, electronic equipment and computer readable medium - Google Patents
Information pushing method, device, electronic equipment and computer readable medium Download PDFInfo
- Publication number
- CN110362736B CN110362736B CN201810291818.1A CN201810291818A CN110362736B CN 110362736 B CN110362736 B CN 110362736B CN 201810291818 A CN201810291818 A CN 201810291818A CN 110362736 B CN110362736 B CN 110362736B
- Authority
- CN
- China
- Prior art keywords
- user
- message
- list
- generating
- page
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The disclosure relates to an information pushing method, an information pushing device, electronic equipment and a computer readable medium. The method relates to the field of computer information processing, and comprises the following steps: acquiring materials of a first user, and generating a release message; updating a preset page in a material mixed list of the second user according to the release message; receiving a message pushing request of the second user, wherein the message pushing request comprises a message display page number; and generating a push message according to the message display page number and the content in the preset page, and pushing the push message to the second user. The information pushing method, the information pushing device, the electronic equipment and the computer readable medium can effectively ensure high availability under mass requests, promote full-quantity real-time assembly response speed, effectively save storage space and save data storage space and data redundancy space.
Description
Technical Field
The disclosure relates to the field of computer information processing, and in particular relates to an information pushing method, an information pushing device, electronic equipment and a computer readable medium.
Background
In order to improve shopping experience of users and improve revisit rate of the users to websites, forming an ecological circle with high user viscosity is one of important development directions of network operators in recent years. The ecological ring aims at forming special shopping culture of electronic commerce and establishing an ecological community for users, people and electronic commerce interaction, so that a colorful content platform is formed. In the e-commerce network platform, a man can be a writer of the e-commerce, and issue commodity recommendation, evaluation, soft text or video under the guidance of the e-commerce; the user accesses the e-commerce platform, browses the works of the passers-by, and performs interaction such as praise, comment, subscription and the like with the passers-by, so that a virtuous circle of co-construction and co-growth of the three parties is formed.
In order to develop the habit of forming a content browsing platform for users, so that the users can browse the materials published by interested persons at the first time, the E-commerce is required to provide a subscription system for the users. Since the e-commerce maintains a huge number of dactylogyrs and the materials they release, and the well-known e-commerce has a huge body of user groups, the subscription system is a challenge for the e-commerce background.
Accordingly, there is a need for a new information pushing method, apparatus, electronic device, and computer readable medium.
The above information disclosed in the background section is only for enhancement of understanding of the background of the disclosure and therefore it may include information that does not form the prior art that is already known to a person of ordinary skill in the art.
Disclosure of Invention
In view of this, the disclosure provides an information pushing method, an apparatus, an electronic device, and a computer readable medium, which can effectively ensure high availability under a massive request, promote a full-scale real-time assembly response speed, effectively save a storage space, and save a data storage space and a data redundancy space.
Other features and advantages of the present disclosure will be apparent from the following detailed description, or may be learned in part by the practice of the disclosure.
According to an aspect of the present disclosure, an information pushing method is provided, including: acquiring materials of a first user, and generating a release message; updating a preset page in a material mixed list of the second user according to the release message; receiving a message pushing request of the second user, wherein the message pushing request comprises a message display page number; and generating a push message according to the message display page number and the content in the preset page, and pushing the push message to the second user.
In an exemplary embodiment of the present disclosure, obtaining the material of the first user, generating the published message further includes: and generating a first user material list through the materials of the first user.
In an exemplary embodiment of the present disclosure, updating the predetermined page in the material shuffling list of the second user according to the published message includes: and updating a predetermined page in the material mixed list of the second user according to the release message through the observer mode.
In an exemplary embodiment of the present disclosure, generating a push message according to the number of message presentation pages and the content in the predetermined page includes: judging the number of the message display pages and the numerical value of a preset page; and generating a push message through the content in the preset page when the number of the message display page is smaller than the numerical value of the preset page.
In an exemplary embodiment of the present disclosure, generating a push message according to the number of message presentation pages and the content in the predetermined page includes: and generating a push message through the content of the first user material list when the number of the message display pages is larger than the numerical value of the preset page.
In one exemplary embodiment of the present disclosure, generating a push message from the content of the first list of user materials includes: generating a full-quantity material mixed list with the first user material list through a multi-path merging algorithm; and generating a push message through the content in the full-content material mixed list.
In an exemplary embodiment of the present disclosure, generating a full-volume material mixing arrangement table with the first user material list by a multiple-sum-total algorithm includes: informing a background server through a message middleware; and generating the full-volume material mixed list through a background server.
In one exemplary embodiment of the present disclosure, notifying the background server through message middleware includes: and notifying the background server by adopting an asynchronous message mode through the message middleware.
In an exemplary embodiment of the present disclosure, the full-volume material mixing table is generated by means of asynchronous assembly.
According to an aspect of the present disclosure, an information pushing device is provided, which includes: the receiving module is used for acquiring the material of the first user and generating a release message; the list module is used for updating a preset page in the material mixed list of the second user according to the release message; the request module is used for receiving a message pushing request of the second user, wherein the message pushing request comprises a message display page number; and the pushing module is used for generating a pushing message according to the message display page number and the content in the preset page, and pushing the pushing message to the second user.
According to an aspect of the present disclosure, there is provided an electronic device including: one or more processors; a storage means for storing one or more programs; when the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the methods as described above.
According to an aspect of the present disclosure, a computer-readable medium is presented, on which a computer program is stored, which program, when being executed by a processor, implements a method as described above.
According to the information pushing method, the information pushing device, the electronic equipment and the computer readable medium, high availability under massive requests can be effectively guaranteed, the response speed of full-quantity real-time assembly is improved, the storage space can be effectively saved, and the data storage space and the data redundancy space are saved.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The above and other objects, features and advantages of the present disclosure will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings. The drawings described below are merely examples of the present disclosure and other drawings may be obtained from these drawings without inventive effort for a person of ordinary skill in the art.
Fig. 1 is a schematic diagram of an information push method in the prior art.
Fig. 2 is a schematic diagram of an information push method in the prior art.
Fig. 3 is a system block diagram of a method and apparatus for pushing information according to an exemplary embodiment.
Fig. 4 is a flowchart illustrating a method of information pushing according to an exemplary embodiment.
Fig. 5 is a flowchart illustrating an information push method according to another exemplary embodiment.
Fig. 6 is a flowchart illustrating an information push method according to another exemplary embodiment.
Fig. 7 is a flowchart illustrating an information push method according to another exemplary embodiment.
Fig. 8 is a block diagram illustrating an information pushing apparatus according to an exemplary embodiment.
Fig. 9 is a block diagram of an information pushing apparatus according to another exemplary embodiment.
Fig. 10 is a block diagram of an electronic device, according to an example embodiment.
FIG. 11 is a schematic diagram illustrating a computer-readable storage medium according to an example embodiment.
Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. However, the exemplary embodiments can be embodied in many forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of the example embodiments to those skilled in the art. The same reference numerals in the drawings denote the same or similar parts, and thus a repetitive description thereof will be omitted.
Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of embodiments of the disclosure. One skilled in the relevant art will recognize, however, that the disclosed aspects may be practiced without one or more of the specific details, or with other methods, components, devices, steps, etc. In other instances, well-known methods, devices, implementations, or operations are not shown or described in detail to avoid obscuring aspects of the disclosure.
The block diagrams depicted in the figures are merely functional entities and do not necessarily correspond to physically separate entities. That is, the functional entities may be implemented in software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor devices and/or microcontroller devices.
The flow diagrams depicted in the figures are exemplary only, and do not necessarily include all of the elements and operations/steps, nor must they be performed in the order described. For example, some operations/steps may be decomposed, and some operations/steps may be combined or partially combined, so that the order of actual execution may be changed according to actual situations.
It will be understood that, although the terms first, second, third, etc. may be used herein to describe various components, these components should not be limited by these terms. These terms are used to distinguish one element from another element. Accordingly, a first component discussed below could be termed a second component without departing from the teachings of the concepts of the present disclosure. As used herein, the term "and/or" includes any one of the associated listed items and all combinations of one or more.
Those skilled in the art will appreciate that the drawings are schematic representations of example embodiments and that the modules or flows in the drawings are not necessarily required to practice the present disclosure, and therefore, should not be taken to limit the scope of the present disclosure.
The "subscribed feed stream" means a personalized feed stream formed by mixing materials published by a user subscribed to by a user. Fig. 1 and 2 are schematic diagrams of an information pushing method in the prior art, respectively. The inventor of the present application has found that when a user accesses the foreground and pulls his own subscribed feed stream from the background, there are mainly two schemes as shown in fig. 1 and 2.
See the real-time assembly scheme shown in fig. 1: and maintaining a set of subscribed readers for each user, and when the user accesses the subscribed feed stream, the electronic commerce background assembles all materials published by the subscribed readers into a list in real time and displays the list to the user.
See offline assembly scheme shown in fig. 2: two data structures are maintained, one is the dimension of the addressee, a user set subscribed to the addressee is maintained for each addressee, and the other is the dimension of the user, and a mixed list of materials published by the addressee subscribed to the user is maintained for each user. And using an observer mode, and when a user publishes new materials, adding a piece of data to the material mixed arrangement list of each user subscribed to the user. When the subscription feed stream is needed to be displayed for the user, the background of the electronic commerce directly takes data from the material mixed list of the user.
The inventors of the present application found that, for the above reference scheme, there are mainly several disadvantages:
The real-time assembly scheme is as follows: because the electronic commerce maintains a large number of persons, materials and user groups, the real-time assembly efficiency of the materials is low, and the requirements of quick response and high availability under the internet age mass request cannot be met.
Offline assembly scheme: this solution can be considered an improvement over the real-time assembly solution, which is a typical space-time approach. Although the response speed of the system is improved, the storage space is huge because of maintaining a mixed list for each user. Materials published by large V, such as darers, appear in mixed lists of many users, resulting in significant data redundancy and space wastage.
The information pushing method provided by the application can solve the problems in the prior art, and the above is a detailed description of the method in the application.
Fig. 3 is a system block diagram of a method and apparatus for pushing information according to an exemplary embodiment.
As shown in fig. 3, the system architecture 100 may include terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 is used as a medium to provide communication links between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.
The user may interact with the server 105 via the network 104 using the terminal devices 101, 102, 103 to receive or send messages or the like. Various communication client applications, such as shopping class applications, web browser applications, search class applications, instant messaging tools, mailbox clients, social platform software, etc., may be installed on the terminal devices 101, 102, 103.
The terminal devices 101, 102, 103 may be a variety of electronic devices having a display screen and supporting web browsing, including but not limited to smartphones, tablets, laptop and desktop computers, and the like.
The server 105 may be a server providing various services, such as a background management server providing support for shopping-type websites browsed by the user using the terminal devices 101, 102, 103. The background management server may analyze and process the received data such as the product information query request, and feed back the processing result (e.g., push message) to the terminal device.
The server 105 may, for example, obtain the material of the first user, generate a post message; the server 105 may also update a predetermined page in the material shuffling list of the second user, for example, in accordance with the posting message; the server 105 may also, for example, receive a message push request from the second user, where the message push request includes the number of pages for message presentation; the server 105 may also generate a push message, for example, from the number of message-presented pages and the content in the predetermined page, and push the push message to the second user.
The server 105 may also be a server providing various services, such as a server providing support for shopping-type websites browsed by the user using the terminal devices 101, 102, 103. For example, when the user sends an information push request to the server 105 by using the terminal device 103 (may also be the terminal device 101 or 102), the server 105 may, for example, determine the number of the message display pages and the value of the predetermined page in the information push request; and generating a push message through the content in the preset page when the number of the message display page is smaller than the numerical value of the preset page. The server 105 may also generate a push message from the content of the first list of user material, for example, when the number of message-presented pages is greater than the value of the predetermined page.
The server 105 may be one entity server, may be composed of a plurality of servers, for example, and a part of the server 105 may be a background server in the present disclosure, for example. It should be noted that, the information pushing method provided in the embodiments of the present disclosure is generally executed by the server 105, and accordingly, the information pushing device is generally disposed in the server 105. While the requesting end, which is provided for the user to browse information, is typically located in the terminal device 101, 102, 103.
Fig. 4 is a flowchart illustrating a method of information pushing according to an exemplary embodiment.
As shown in fig. 4, in S402, a material of a first user is acquired, and a posting message is generated. In the application, the first user can be, for example, a person in a website, the person is a writer of an electronic commerce, and the person issues commodity recommendation, evaluation, soft text or video under the guidance of the electronic commerce, wherein the material can be, for example, the person distributes commodity recommendation, evaluation, soft text or video.
In one embodiment, the method further comprises: and generating a first user material list through the materials of the first user. For example, the owners can issue the video, soft text, commodity recommendation and other materials on an issue platform provided by the electronic commerce, and the material data are stored under the material lists corresponding to the owners respectively to generate a first user material list corresponding to each owner.
In S404, a predetermined page in the material shuffling list of the second user is updated in accordance with the posting message. The second user can be, for example, a common network user, the second user can subscribe to the material content of the first user, and the user can access the e-commerce platform, browse the works of the addressee and interact with the addressee to praise, comment, subscribe and the like. In the present application, a "page" is a unit of measure of the back-end interface that a client pulls when a feed stream is exposed to an app, pc, or electronic device.
In one embodiment, the predetermined pages in the second user's material shuffling list may be updated in accordance with the published message, for example, by the viewer mode. Wherein, observer mode: one of the classical design patterns defines a one-to-many dependency between objects so that when the state of an object changes, all objects that depend on it are notified and automatically refreshed. It separates the observer from the observed object, which improves the maintainability and reusability of the application.
In one embodiment, a background server maintains a second user set subordinate to the man, and each second user subscribed to the first user material is automatically notified of updating a predetermined number of pages in the mixed material list by using an observer mode. Without loss of generality, the predetermined number of pages may be, for example, 2 pages, or may be 3 pages or 4 pages, which is determined according to the memory capacity of the network server.
In one embodiment, after the first user publishes the material, the material is inserted into the second user's newly subscribed material shuffling list, and the predetermined number of pages may be, for example, 2 pages. After inserting the materials into the material mixed list, the length of the material mixed list exceeds two pages, for example, the length of the material mixed list can be intercepted, and only 2 pages of contents are reserved.
In S406, a message push request of the second user is received, where the message push request includes a number of pages of the message presentation. For example, when the second user opens the predetermined page, the message push request is sent, the predetermined page may be, for example, a dedicated page for providing the first user material display, and the predetermined page may also be set in the home page of the second user, where the second user clicks the website home page, and may consider that the second user sends the message push request. For example, when the second user enters the first page of the predetermined page, the default message shows that the number of pages is 1, that is, the content in the 1 st page of the second user material mixing list is shown. With the turning of the second user, the second user can perform the page turning-down operation in the page, or perform the operation of selecting the display page, and the second user can acquire the number of message display pages from the operation of the page to be displayed.
In S408, a push message is generated according to the number of the message display pages and the content in the predetermined page, and the push message is pushed to the second user.
In one embodiment, determining the number of message presentation pages and the value of a predetermined page; and generating a push message through the content in the preset page when the number of the message display page is smaller than the numerical value of the preset page. Continuing with the setting as in the above, the predetermined number of pages in the second user material shuffling list may be, for example, 2 pages, and when the page of the message to be displayed by the second user is less than 2 pages, generating a push message directly through the content in the second user material shuffling list, and displaying the push message to the page of the second user. The push message may be, for example, a latest material set of a plurality of first users (dactylogyrs) subscribed to by the second user.
In another embodiment, when the number of the message presentation pages is greater than the value of the predetermined page, a push message is generated by the content of the first user material list. Comprising the following steps: generating a full-quantity material mixed list with the first user material list through a multi-path merging algorithm; and generating a push message through the content in the full-content material mixed list.
In one embodiment, generating a full-volume material mixing arrangement table with the first user material list by a multi-way merge algorithm includes: informing a background server through a message middleware; and generating the full-volume material mixed list through a background server. The multi-path merging algorithm (K-Way Merge Algorithm) is an algorithm for gradually merging multi-path data into ordered data, namely, the original file is decomposed into a plurality of parts which can be loaded into the memory at one time, and each part is respectively called into the memory to finish sequencing. Then, the sub files which are already ordered are subjected to multi-path merging ordering. In the present application, a full-scale mixed list of materials can be generated, for example, using a "septicator tree" algorithm in a multiple merge algorithm. The process is as follows: firstly, the first element key words in k merging segments are sequentially stored in the leaf node spaces from b [0] to b [ k-1], then the loser tree is created, and the minimum key word index (namely the serial number of the merging segment) after the creation is finished is stored in ls [0 ]. And then continuously cycling: the serial number of which merging segment from which the minimum key stored in ls [0] comes is q, the first element of the merging segment is output to the ordered merging segment, then the key of the next element is put into the leaf node b [ q ] where the last element is originally located, the leaf node b [ q ] is followed to adjust the loser tree upwards until the new minimum key is selected, and the subscript of the new minimum key is also stored in ls [0 ]. This process is looped until all elements are written into the ordered merge segment.
In one embodiment, the background server is notified by the message middleware in the form of an asynchronous message. The full-quantity material mixing arrangement table is generated in an asynchronous assembly mode. Message middleware: MQ (Message Queue) is a communication method of application programs to application programs, which decouples producers and consumers through message transmission, and has the characteristics of high performance and high availability. Messaging refers to communication between programs by sending data in messages, rather than by directly invoking each other.
According to the information pushing method disclosed by the invention, high availability under massive requests can be effectively ensured, the response speed of full-quantity real-time assembly is improved, the storage space can be effectively saved, and the data storage space and the data redundancy space are saved.
According to the information pushing method, a mode of combining real-time pulling of the latest subscription list with asynchronous preloading is adopted, and different pulling logics are adopted according to the number of pages pulled by a user, so that the reliability problem existing in the previous method is solved, and the space is effectively saved. The information pushing method is suitable for the condition that the subscription system pulls the feed stream of the content platform.
It should be clearly understood that this disclosure describes how to make and use particular examples, but the principles of this disclosure are not limited to any details of these examples. Rather, these principles can be applied to many other embodiments based on the teachings of the present disclosure.
Fig. 5 is a flowchart illustrating an information push method according to another exemplary embodiment. Fig. 5 is a detailed description of the first user publishing material.
Wherein, in S502, the first user issues the material.
In S504, a first user material list of the first user is generated.
In S506, the second user subscribed to the material of the first user is notified of the material update message, and the material is inserted into the latest subscribed material list of the second user.
In S508, it is determined whether the material mixing arrangement table of the second user exceeds a predetermined number of pages.
In S510, if the predetermined number of pages is exceeded, then the predetermined number of pages is truncated.
Fig. 5 illustrates a process of publishing materials for a first user, where after the first user publishes materials, the first user may not only join its own material list, but also notify each second user subscribed to the first user, and insert a newly subscribed material mixed list for the second user. In order to save space, for example, a mixed list with 2 predetermined pages can be reserved for the second user, and in the process of generating the list, if the length of the list exceeds two pages, intercepting data is performed, and only 2 pages of contents are reserved.
Fig. 6 is a flowchart illustrating an information push method according to another exemplary embodiment. Fig. 6 is a detailed description of the background server providing a push message for a second user.
In S602, a push message request from a second user is acquired, and a subscription material list is pulled.
In S604, it is determined from the push message request whether the number of pages to be presented is greater than a predetermined number of pages.
In S606, when the number of pages to be displayed is less than the predetermined number of pages, the latest subscription material mixed list for the user is pulled.
In S608, when the number of pages to be presented is greater than the predetermined number of pages, the asynchronously assembled full-content mixed list is pulled.
In S610, a push message is generated and pushed to the second user.
The full-content material mixed-arranging list can be synchronously assembled in the background when a user clicks a message display page, or can be assembled in real time when the number of pages to be displayed is larger than a preset page, for example, the application is not limited to the above.
The second user pulls the own subscription material mixed list, at this moment, the background server judges whether to get the first two pages of data according to the request transmitted by the client, if yes, the stored latest subscription material list data of the second user is pulled directly and sent to the client, and the multi-channel merging module can be notified asynchronously by the MQ at the same time, and the full amount of mixed material list is assembled asynchronously according to the subscribed material list of each first user; if the number of pages is more than 2, pulling the assembled full-volume mixed material list, and sending the full-volume mixed material list to a client of a second user.
Fig. 7 is a flowchart illustrating an information push method according to another exemplary embodiment. Fig. 7 is a detailed description of a second user subscribing to first user material.
Wherein in S702 the second user selects to subscribe to the material of the first user.
In S704, it is determined whether the content in the material shuffling list of the second user reaches a predetermined number of pages.
In S706, the time of the most-time material in the material shuffling list of the user is compared with the time of the latest material published by the first user.
In S708, it is determined whether the former is smaller than the latter.
In S710, when the former is smaller than the latter, two pages of content in the first material mixed list of the first user are taken and merged and ordered with the material mixed list of the second user, and after the ordering, two pages of data are intercepted as a new material mixed list of the second user.
When a second user subscribes to the materials of a first user, firstly judging whether the latest subscribed materials mixed arrangement table of the second user is full of two pages, and if the latest subscribed materials mixed arrangement table of the second user is less than 2 pages, supplementing two pages of data by using the materials published by the first user; if two pages are full, comparing the last one of the latest material lists with the last online time of the first user, if the last one of the latest material lists is big, ending the flow, if the last one of the latest material lists is small, taking the latest 2 pages of data from the materials issued by the first user, merging and sorting the latest material lists with the latest material lists of the second user, and intercepting the latest 2 pages of data.
Those skilled in the art will appreciate that all or part of the steps implementing the above described embodiments are implemented as a computer program executed by a CPU. The above-described functions defined by the above-described methods provided by the present disclosure are performed when the computer program is executed by a CPU. The program may be stored in a computer readable storage medium, which may be a read-only memory, a magnetic disk or an optical disk, etc.
Furthermore, it should be noted that the above-described figures are merely illustrative of the processes involved in the method according to the exemplary embodiments of the present disclosure, and are not intended to be limiting. It will be readily appreciated that the processes shown in the above figures do not indicate or limit the temporal order of these processes. In addition, it is also readily understood that these processes may be performed synchronously or asynchronously, for example, among a plurality of modules.
The following are device embodiments of the present disclosure that may be used to perform method embodiments of the present disclosure. For details not disclosed in the embodiments of the apparatus of the present disclosure, please refer to the embodiments of the method of the present disclosure.
Fig. 8 is a block diagram illustrating an information pushing apparatus according to an exemplary embodiment. The information pushing device 80 includes: a receiving module 802, a listing module 804, a requesting module 806, a pushing module 808.
The receiving module 802 is configured to obtain a material of the first user, and generate a published message.
The list module 804 is configured to update a predetermined page in the material shuffling list of the second user according to the published message.
The request module 806 is configured to receive a message push request of the second user, where the message push request includes a number of message display pages.
The pushing module 808 is configured to generate a push message according to the number of the message display pages and the content in the predetermined page, and push the push message to the second user.
Fig. 9 is a block diagram of an information pushing apparatus according to another exemplary embodiment. The information pushing device 90 includes: a publishing module 902, a storage module 904, a background service module 906, an asynchronous multi-merge module 908.
The publishing module 902 is used for a first user to publish materials such as videos, soft texts, commodity recommendations and the like on a publishing platform provided by an electronic commerce, the publishing module 902 can store the materials under a material list corresponding to a user, and meanwhile, a second user set subscribed to the first user is maintained, and each second user subscribed to the first user is automatically informed of updating the latest mixed material list by using an observer mode.
The storage module 904 is configured to store a list of published materials for each first user, and store, for each second user, a latest mixed list of materials published by the first user subscribed by the second user, which may generally be the first two pages of data after mixed arrangement of materials of each first user is subscribed.
The background service module 906 determines the source of the captured data according to the request of the client, and executes other logic required to send the data to the client.
When the asynchronous multiple merging module 908 receives the MQ notification from the background service module, the materials issued by the different persons are assembled into a full-volume mixed material list by using the multiple merging algorithm, and the list is used for downloading data after the user requests two pages.
The arrow paths respectively represent paths of the dapeople for distributing materials, the background service captures paths of the first two pages of data, the paths of the mixed list of the total materials are asynchronously assembled, and the background service captures paths of the data after the two pages are captured.
Fig. 10 is a block diagram of an electronic device, according to an example embodiment.
An electronic device 200 according to such an embodiment of the present disclosure is described below with reference to fig. 10. The electronic device 200 shown in fig. 10 is merely an example and should not be construed to limit the functionality and scope of use of the disclosed embodiments.
As shown in fig. 10, the electronic device 200 is in the form of a general purpose computing device. The components of the electronic device 200 may include, but are not limited to: at least one processing unit 210, at least one memory unit 220, a bus 230 connecting the different system components (including the memory unit 220 and the processing unit 210), a display unit 240, and the like.
Wherein the storage unit stores program code executable by the processing unit 210 such that the processing unit 210 performs steps according to various exemplary embodiments of the present disclosure described in the above-described electronic prescription flow processing methods section of the present specification. For example, the processing unit 210 may perform the steps as shown in fig. 4, 5, 6, 7.
The memory unit 220 may include readable media in the form of volatile memory units, such as Random Access Memory (RAM) 2201 and/or cache memory 2202, and may further include Read Only Memory (ROM) 2203.
The storage unit 220 may also include a program/utility 2204 having a set (at least one) of program modules 2205, such program modules 2205 including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of which may include an implementation of a network environment.
Bus 230 may be a bus representing one or more of several types of bus structures including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.
The electronic device 200 may also communicate with one or more external devices 300 (e.g., keyboard, pointing device, bluetooth device, etc.), one or more devices that enable a user to interact with the electronic device 200, and/or any device (e.g., router, modem, etc.) that enables the electronic device 200 to communicate with one or more other computing devices. Such communication may occur through an input/output (I/O) interface 250. Also, the electronic device 200 may communicate with one or more networks such as a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network, such as the Internet, through a network adapter 260. Network adapter 260 may communicate with other modules of electronic device 200 via bus 230. It should be appreciated that although not shown, other hardware and/or software modules may be used in connection with electronic device 200, including, but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, data backup storage systems, and the like.
From the above description of embodiments, those skilled in the art will readily appreciate that the example embodiments described herein may be implemented in software, or may be implemented in software in combination with the necessary hardware. Thus, the technical solution according to the embodiments of the present disclosure may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (may be a CD-ROM, a U-disk, a mobile hard disk, etc.) or on a network, including several instructions to cause a computing device (may be a personal computer, a server, or a network device, etc.) to perform the above-described method according to the embodiments of the present disclosure.
Fig. 11 schematically illustrates a computer-readable storage medium in an exemplary embodiment of the present disclosure.
Referring to fig. 11, a program product 400 for implementing the above-described method according to an embodiment of the present disclosure is described, which may employ a portable compact disc read-only memory (CD-ROM) and include program code, and may be run on a terminal device, such as a personal computer. However, the program product of the present disclosure is not limited thereto, and in this document, a readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium can be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium would include the following: an electrical connection having one or more wires, a portable disk, a hard disk, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The computer readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, with readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A readable storage medium may also be any readable medium that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a readable storage medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations of the present disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device, partly on a remote computing device, or entirely on the remote computing device or server. In the case of remote computing devices, the remote computing device may be connected to the user computing device through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., connected via the Internet using an Internet service provider).
The computer-readable medium carries one or more programs, which when executed by one of the devices, cause the computer-readable medium to perform the functions of: acquiring materials of a first user, and generating a release message; updating a preset page in a material mixed list of the second user according to the release message; receiving a message pushing request of the second user, wherein the message pushing request comprises a message display page number; and generating a push message according to the message display page number and the content in the preset page, and pushing the push message to the second user.
Those skilled in the art will appreciate that the modules may be distributed throughout several devices as described in the embodiments, and that corresponding variations may be implemented in one or more devices that are unique to the embodiments. The modules of the above embodiments may be combined into one module, or may be further split into a plurality of sub-modules.
From the above description of embodiments, those skilled in the art will readily appreciate that the example embodiments described herein may be implemented in software, or in combination with the necessary hardware. Thus, the technical solutions according to the embodiments of the present disclosure may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (may be a CD-ROM, a U-disk, a mobile hard disk, etc.) or on a network, and include several instructions to cause a computing device (may be a personal computer, a server, a mobile terminal, or a network device, etc.) to perform the method according to the embodiments of the present disclosure.
Exemplary embodiments of the present disclosure are specifically illustrated and described above. It is to be understood that this disclosure is not limited to the particular arrangements, instrumentalities and methods of implementation described herein; on the contrary, the disclosure is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.
In addition, the structures, proportions, sizes, etc. shown in the drawings in the specification are used for the understanding and reading of the disclosure, and are not intended to limit the applicable limitations of the disclosure, so that any structural modification, change in proportion, or adjustment of size is not technically significant, and yet falls within the scope of the disclosure without affecting the technical effects and the objects that can be achieved by the disclosure. Meanwhile, the terms such as "upper", "first", "second", and "a" and the like recited in the present specification are also for convenience of description only, and are not intended to limit the scope of the disclosure, in which the relative relationship changes or modifications thereof are not limited to essential changes in technical content, but are also regarded as the scope of the disclosure.
Claims (10)
1. An information pushing method is characterized by comprising the following steps:
acquiring materials of a first user, and generating a release message;
Updating a preset page in a material mixed list of the second user according to the release message; the second user comprises a common network user, and can subscribe the material content of the first user;
Receiving a message pushing request of the second user, wherein the message pushing request comprises a message display page number; and
Generating a push message according to the message display page number and the content in the preset page, and pushing the push message to the second user;
Wherein the generating a push message according to the number of message presentation pages and the content in the predetermined page includes: judging the number of the message display pages and the numerical value of a preset page; generating a push message through the content in the preset page when the number of the message display page is smaller than the numerical value of the preset page; and generating a push message through the content of the first user material list when the number of the message display pages is larger than the numerical value of the preset page.
2. The method of claim 1, wherein obtaining material for the first user, generating the post message further comprises:
and generating a first user material list through the materials of the first user.
3. The method of claim 1, wherein updating the predetermined page in the material shuffling list of the second user based on the published message comprises:
And updating a predetermined page in the material mixed list of the second user through the observer mode and the release message.
4. The method of claim 1, wherein generating a push message through the content of the first list of user material comprises:
generating a full-quantity material mixed list with the first user material list through a multi-path merging algorithm;
and generating a push message through the content in the full-content material mixed list.
5. The method of claim 4, wherein generating a full-volume mix list of material with the first list of user material by a multiple-sum algorithm comprises:
Informing a background server through a message middleware; and
And generating the full-volume material mixed list through a background server.
6. The method of claim 5, wherein notifying the background server via message middleware comprises:
And notifying the background server by adopting an asynchronous message mode through the message middleware.
7. The method of claim 4, wherein the full-scale material mix table is generated by means of asynchronous assembly.
8. An information pushing apparatus, characterized by comprising:
The receiving module is used for acquiring the material of the first user and generating a release message; the list module is used for updating a preset page in the material mixed list of the second user according to the release message; the second user comprises a common network user, and can subscribe the material content of the first user;
the request module is used for receiving a message pushing request of the second user, wherein the message pushing request comprises a message display page number; and
The pushing module is used for generating a pushing message according to the number of the message display pages and the content in the preset page and pushing the pushing message to the second user;
The pushing module is further used for judging the number of the message display pages and the numerical value of a preset page; generating a push message through the content in the preset page when the number of the message display page is smaller than the numerical value of the preset page; and generating a push message through the content of the first user material list when the number of the message display pages is larger than the numerical value of the preset page.
9. An electronic device, comprising:
One or more processors;
a storage means for storing one or more programs;
When executed by the one or more processors, causes the one or more processors to implement the method of any of claims 1-7.
10. A computer readable medium, on which a computer program is stored, characterized in that the program, when being executed by a processor, implements the method according to any of claims 1-7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810291818.1A CN110362736B (en) | 2018-04-03 | 2018-04-03 | Information pushing method, device, electronic equipment and computer readable medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810291818.1A CN110362736B (en) | 2018-04-03 | 2018-04-03 | Information pushing method, device, electronic equipment and computer readable medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110362736A CN110362736A (en) | 2019-10-22 |
CN110362736B true CN110362736B (en) | 2024-06-18 |
Family
ID=68213436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810291818.1A Active CN110362736B (en) | 2018-04-03 | 2018-04-03 | Information pushing method, device, electronic equipment and computer readable medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110362736B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112291581B (en) * | 2020-10-29 | 2022-09-20 | 北京达佳互联信息技术有限公司 | Server, terminal equipment, information processing method and device |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413065A (en) * | 2010-09-19 | 2012-04-11 | 腾讯科技(深圳)有限公司 | Microblog client, microblog message aggregation method and instant messaging client |
CN106657327A (en) * | 2016-12-20 | 2017-05-10 | 上海银禾油信息技术有限公司 | Message pushing method and message pushing device |
CN107015868A (en) * | 2017-04-11 | 2017-08-04 | 南京大学 | A kind of distributed parallel construction method of General suffix tree |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7587450B2 (en) * | 2006-02-01 | 2009-09-08 | Swift Creek Systems, Llc | HTTP publish/subscribe communication protocol |
CN104410660A (en) * | 2014-10-16 | 2015-03-11 | 小米科技有限责任公司 | Method and device of downloading multimedia resources as well as router and server |
CN107040456A (en) * | 2017-06-07 | 2017-08-11 | 孝感市青谷信息科技有限公司 | A kind of information push method |
-
2018
- 2018-04-03 CN CN201810291818.1A patent/CN110362736B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413065A (en) * | 2010-09-19 | 2012-04-11 | 腾讯科技(深圳)有限公司 | Microblog client, microblog message aggregation method and instant messaging client |
CN106657327A (en) * | 2016-12-20 | 2017-05-10 | 上海银禾油信息技术有限公司 | Message pushing method and message pushing device |
CN107015868A (en) * | 2017-04-11 | 2017-08-04 | 南京大学 | A kind of distributed parallel construction method of General suffix tree |
Also Published As
Publication number | Publication date |
---|---|
CN110362736A (en) | 2019-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12135758B2 (en) | Event listening integration in a collaborative electronic information system | |
US10535107B2 (en) | Offline content sharing | |
US7979067B2 (en) | Context avatar | |
US20210271682A1 (en) | Gathering and contributing content across diverse sources | |
AU2017201395B2 (en) | Content item-centric conversation aggregation in shared folder backed integrated workspaces | |
US9047644B1 (en) | Providing context for a social graph addition | |
US10104427B1 (en) | Temporary modifying of media content metadata | |
EP3008906B1 (en) | Providing supplemental content in relation to embedded media | |
US11374884B2 (en) | Managing and displaying online messages along timelines | |
US20140281895A1 (en) | Techniques for embedding quotes of content | |
US20070250577A1 (en) | Web Feed Presence | |
CN113760289A (en) | Method and device for drawing canvas | |
US20200344188A1 (en) | Systems and Methods for Providing Real-Time, Interactive Email Content | |
CN109446442B (en) | Method and apparatus for processing information | |
US11140234B2 (en) | Controlling usages of channels of a user experience ecosystem | |
US11170059B2 (en) | Personalized content selection for time-constrained sessions | |
CN111010453A (en) | Service request processing method, system, electronic device and computer readable medium | |
CN110362736B (en) | Information pushing method, device, electronic equipment and computer readable medium | |
Jurgenson | The de-McDonaldization of the Internet | |
CN113032702B (en) | A page loading method and device | |
US11144588B2 (en) | Determining and utilizing actual purpose of user-assembled collection of electronic content items | |
CN109408647B (en) | Method and apparatus for processing information | |
US9503411B1 (en) | Ranking posts based on a prioritized list of recipients | |
CN115250259B (en) | Information interaction method and device and electronic equipment | |
US20110225502A1 (en) | Accessing web services and presenting web content according to user specifications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |