CN109769027B - Message pushing method, device and equipment - Google Patents

Message pushing method, device and equipment Download PDF

Info

Publication number
CN109769027B
CN109769027B CN201910071529.5A CN201910071529A CN109769027B CN 109769027 B CN109769027 B CN 109769027B CN 201910071529 A CN201910071529 A CN 201910071529A CN 109769027 B CN109769027 B CN 109769027B
Authority
CN
China
Prior art keywords
anchor
user set
effective
effective user
user
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
Application number
CN201910071529.5A
Other languages
Chinese (zh)
Other versions
CN109769027A (en
Inventor
陈伟武
杨子国
周健兴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Cubesili Information Technology Co Ltd
Original Assignee
Guangzhou Cubesili Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Cubesili Information Technology Co Ltd filed Critical Guangzhou Cubesili Information Technology Co Ltd
Priority to CN201910071529.5A priority Critical patent/CN109769027B/en
Publication of CN109769027A publication Critical patent/CN109769027A/en
Application granted granted Critical
Publication of CN109769027B publication Critical patent/CN109769027B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

The embodiment of the specification discloses a message pushing method, a message pushing device and message pushing equipment. The scheme comprises the following steps: acquiring a first effective user set; the effective users in the first effective user set are users with active behaviors in a specified time; determining an anchor concerned by each effective user in the first effective user set; determining a second effective user set corresponding to each anchor from the first effective user set; and pushing the message to each effective user in the second effective user set. By the method, the message pushing time delay can be reduced, and the message pushing efficiency is improved.

Description

Message pushing method, device and equipment
Technical Field
The present application relates to the field of computer technologies, and in particular, to a method, an apparatus, and a device for pushing a message.
Background
In the prior art, with the rapid development of the internet technology, live broadcast application is favored by more and more users, and the types of products applied by live broadcast are more and more. How to provide better live broadcast service becomes a key influencing the user experience of live broadcast. However, the existing live broadcast is of various types, a good information content propagation mode needs to be selected as an effective content operation means, and a broadcast notification mode before live broadcast can activate certain zombie users, improve user stickiness and increase product function exposure, so that the method is widely applied in the field of live broadcast.
At present, in the prior art, because user data cannot be labeled in all dimensions, a push system, a user system and a business system are often not under the same service. At this time, in the prior art, first all fans corresponding to a certain anchor are found out from the system, then real effective users are screened out from all fans based on various preset conditions, and then live broadcast messages are pushed for the effective users, however, the process of screening out real effective users from numerous fans is a task with a huge data volume, for example: many anchor have fans which are more than ten million, and the fan has only hundreds of effective users, and at this time, if hundreds of effective users are filtered and screened from the fan data in the middle layer, the workload of the server is extremely large, the screening efficiency is low, and thus the message pushing efficiency is low.
Disclosure of Invention
In view of this, embodiments of the present application provide a method, an apparatus, and a device for pushing a message, which are used to reduce a pushing delay of the message and improve efficiency of pushing the message.
In order to solve the above technical problem, the embodiments of the present specification are implemented as follows:
an embodiment of the present specification provides a message pushing method, including:
acquiring a first effective user set; the effective users in the first effective user set are users with active behaviors in a specified time;
determining an anchor concerned by each effective user in the first effective user set;
determining a second effective user set corresponding to each anchor from the first effective user set;
and pushing the message to each effective user in the second effective user set.
Optionally, the determining the anchor concerned by each effective user in the first effective user set specifically includes:
determining the anchor corresponding to each effective user in the first effective user set from an attention system; the attention system comprises an attention relation between a user and a main broadcast.
Optionally, determining the second active user set corresponding to each anchor specifically includes:
and classifying and summarizing the effective users by taking each anchor as a dimension to obtain a second effective user set corresponding to each anchor.
Optionally, after determining the second active user set corresponding to each anchor, the method further includes:
and storing the second active user set in a Map data structure form.
Optionally, the storing the second active user set in a Map data structure form specifically includes:
inquiring whether a third effective user set corresponding to each anchor exists in the Map data structure or not to obtain an inquiry result;
when the query result shows that the third effective user set exists in the Map data structure, performing de-duplication and combination on the third effective user set and the second effective user set to obtain a fourth effective user set, and storing the fourth effective user set in a Map data structure form;
and when the query result indicates that the third effective user set does not exist in the Map data structure, storing the second effective user set in the form of the Map data structure.
Optionally, after storing the second active user set in the form of a Map data structure, the method further includes:
for each anchor, traversing each Map data structure, and acquiring a second effective user set corresponding to each anchor from each Map data structure;
converting the second active set of users into a first string;
and taking the anchor identification of each anchor as a key value, and taking the first character string as a value to be stored in a database.
Optionally, the step of storing the anchor identifier of each anchor as a key value and the first character string as a value in a database specifically includes:
judging whether the key value exists in the database or not to obtain a judgment result;
and when the judgment result shows that the key value does not exist in the database, storing the key value and the value in the database.
Optionally, the determining whether the key value exists in the database further includes:
when the judgment result shows that the key value exists in the database, a second character string corresponding to the key value in the database is subjected to de-coincidence with the first character string to obtain a third character string;
and taking the third character string as a value, and storing the third character string in the database corresponding to the key value.
Optionally, the pushing a message to each active user in the second active user set specifically includes:
and before the anchor is played, pushing messages to each effective user in the second effective user set.
An embodiment of this specification provides a message pushing apparatus, including:
the first effective user acquisition module is used for acquiring a first effective user set; the effective users in the first effective user set are users with active behaviors in a specified time;
an anchor determining module, configured to determine an anchor concerned by each active user in the first active user set;
a second effective user determining module, configured to determine, from the first effective user set, a second effective user set corresponding to each anchor;
and the message pushing module is used for pushing messages to all the effective users in the second effective user set.
An embodiment of this specification provides a message pushing apparatus, including:
at least one processor; and (c) a second step of,
a memory communicatively coupled to the at least one processor; wherein the content of the first and second substances,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the message push method.
A computer readable storage medium having stored thereon instructions which, when executed by a processor, implement the steps of the message push method.
The embodiment of the specification adopts at least one technical scheme which can achieve the following beneficial effects: by directly acquiring the effective users, determining the concerned anchor according to the effective users, determining the effective user set corresponding to the anchor, and carrying out targeted message pushing on the effective users corresponding to each anchor, the operation of screening the effective users from a large number of fans is avoided, the pushing time delay of the notification message is reduced, and the message pushing efficiency is improved.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the application and together with the description serve to explain the application and not to limit the application. In the drawings:
fig. 1 is a schematic flowchart of a message pushing method provided in embodiment 1 of the present specification;
fig. 2 is a schematic view of a message pushing interface provided in embodiment 1 of the present specification;
fig. 3 is a schematic flowchart of an anchor-active user maintenance method provided in embodiment 2 of the present specification;
fig. 4 is a schematic structural diagram of a message pushing apparatus corresponding to fig. 1 provided in an embodiment of the present specification;
fig. 5 is a schematic structural diagram of a message pushing apparatus corresponding to fig. 1 provided in an embodiment of this specification.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the technical solutions of the present application will be described in detail and completely with reference to the following specific embodiments of the present application and the accompanying drawings. It should be apparent that the described embodiments are only some of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
When message pushing is performed in the prior art, a common processing procedure is as follows: and acquiring all fans corresponding to the anchor → screening all fans layer by layer to obtain the effective user. However, in the screening process, a lot of time is consumed, and when a plurality of anchor broadcasters broadcast at the same time, the amount of data processed by the server is increased, which may cause the server to crash, and the valid users cannot be screened. For example: if a plurality of anchor broadcasters are broadcast simultaneously, the data volume required to be filtered by the system is larger and larger, so that the pressure of a server is increased, the processing time is longer, if the whole processing time needs to be zero 40 minutes per hour, the time interval of receiving the broadcast request instruction is 40 minutes after the broadcast, and the live broadcast time is 30 minutes, the live broadcast is finished when the system filters the invalid users and accurately sends the push notification to each valid user, and the information received by the valid users is invalid information.
In order to overcome the problems in the prior art, the technical solutions provided by the embodiments of the present application are described in detail below with reference to the accompanying drawings.
Example 1
Fig. 1 is a flowchart of a message pushing method provided in embodiment 1 of this specification. From the viewpoint of a program, the execution subject of the flow may be a program installed in an application server or an application client. As shown in fig. 1, the method steps of a message pushing method are as follows:
s101: acquiring a first active USER (AVAIL USER) set; the active users in the first active user set are users having active behaviors within a specified time.
It should be noted that the valid USER set may also be referred to as a valid USER LIST, and may include a set of multiple valid USERs, which may be represented by AVAIL _ USER _ LIST. When the first valid user set is obtained, the first valid user set may be obtained from a PUSH system (PUSH _ SYS, PUSH system for short) in the third-party application platform, and the first valid user set may be defined as: the third-party application platform comprises a set of users having active behaviors within a specified time, where the active behaviors mentioned herein may be users whose login time reaches a preset time within the specified time, or users whose login frequency meets a preset range within the specified time, and so on, for example: the user with the form (formId) formulated in a certain applet can receive the pushed rule, and the formId can be generated and reported to the server when the certain applet has active behaviors within five days.
S102: determining the anchor concerned by each effective user in the first effective user set.
An ATTENTION relationship between a host and a user exists in an ATTENTION system of a live broadcast platform, a corresponding relationship between a third-party user and the ATTENTION host also exists in an ATTENTION system (ATTENTION _ SYS) of a third-party application platform, an ID account or a nickname of the same user in the live broadcast platform may be different from an ID account or a nickname in the third-party application platform, and at this time, the corresponding relationship between the same user and different application platforms needs to be found out when interaction is performed between the live broadcast platform and the third-party application platform, for example: the ID account number of the user A on the live broadcast platform is X, the attention relationship between the anchor1 and the account number X exists in the live broadcast platform, and the mapping relationship existing in the attention system of the third-party application platform is as follows: the method comprises the steps of a host 1 and an account Y, wherein the account Y is a registered account of a user A in a third-party application platform.
In the above steps, each valid user is extracted from the first valid user set, and then the anchor concerned by each valid user is determined from the concerned system.
For example: the first active set of users is: { A, B, C, D, E, F }, extracting all effective users, and respectively obtaining a anchor set concerned by each effective user as follows: a → { anchor1, anchor3, anchor 4, anchor 7}, B → { anchor1, anchor 2, anchor 6, anchor 7}, C → { anchor 2, anchor3, anchor 5, anchor 7}, D → { anchor 2, anchor3, anchor 4, anchor 7}, E → { anchor1, anchor 4, anchor 6, anchor 7}, F → { anchor 2, anchor3, anchor 5, anchor 7}.
S103: and determining a second effective user set corresponding to each anchor from the first effective user set.
Step S103 may specifically include:
and classifying and summarizing the effective users by taking each anchor as a dimension to obtain a second effective user set corresponding to each anchor.
For example: in step S102, the example is carried forward, with the anchor as the dimension, and the set obtained after the classification and aggregation is: anchor1 → { A, B, E }, anchor 2 → { B, C, D, F }, anchor3 → { A, C, D, F }, anchor 4 → { A, D, E }, anchor 5 → { C, F }, anchor 6 → { B, E }, and anchor7 → { A, B, C, D, E, F }.
S104: and pushing the message to each effective user in the second effective user set.
When performing push, push is performed according to a live object, and there may be a live notification to each anchor at the same time, or only one anchor may perform live broadcast, for example (an example in step S103 is used): when the anchor1 wants to perform live broadcasting, according to the mapping relation: anchor1 → { a, B, E }, it being understood that an on-air message can be pushed to user a, user B, and user E.
Fig. 2 is a schematic view of a message pushing interface provided in embodiment 1 of this specification, and as shown in fig. 2, in order to ensure that an active user can watch live broadcast in time, when performing pushing, it should be satisfied that, before the anchor broadcast is played, message pushing is performed to each active user in the second active user set. In fig. 2, a message is pushed to a user in a service notification, the pushed message includes a name (nickname) of a main broadcast, a live broadcast topic (schedule topic), a live broadcast start time, and a remark message, if the user is interested in directly clicking "enter applet to view" to enter a live broadcast room, and if the user does not want to receive a push message related to the live broadcast any more, the user can click "reject notification" to reject the message. As can be seen from the figure, the live view time is 2019, 1 month, 3 days, 20, and the message is pushed to the user at 19 times of the day: 51, that is, when performing push, it should be satisfied that a message is pushed to each active user in the second active user set before the anchor is played.
And after the second effective user set is obtained, storing the second effective user set in a Map data structure form. The method specifically comprises the following steps:
inquiring whether a third effective user set corresponding to each anchor exists in the Map data structure or not to obtain an inquiry result;
when the query result shows that the third effective user set exists in the Map data structure, performing de-duplication and combination on the third effective user set and the second effective user set to obtain a fourth effective user set, and storing the fourth effective user set in a Map data structure form;
and when the query result indicates that the third effective user set does not exist in the Map data structure, storing the second effective user set in the form of the Map data structure.
A Map data structure is a data structure that is stored in the form of key-value pairs. The key value is the key value. The key values may represent any type of object, and each key value must be stored in correspondence with a corresponding value.
When the second valid user set is stored in the Map data structure, in order to avoid wasting the storage space in the database, it is necessary to first query whether the same user list already exists in the data structure by using the major code as an index, compare whether the existing user list is the same as the user list to be stored, if the existing user list is the same as the user list to be stored, repeat storage is not needed, and if the existing user list is not the same as the user list to be stored, a corresponding user list is newly created.
After storing the second active user set in the form of a Map data structure, the method may further include:
for each anchor, traversing each Map data structure, and acquiring a second effective user set corresponding to each anchor from each Map data structure;
converting the second active set of users into a first string;
and taking the anchor identification of each anchor as a key value, and taking the first character string as a value to be stored in a database.
The step of taking the anchor identifier of each anchor as a key value, and the step of taking the first character string as a value, storing the first character string in a database may specifically include:
judging whether the key value exists in the database or not to obtain a judgment result;
and when the judgment result shows that the key value does not exist in the database, storing the key value and the value in the database.
When the judgment result shows that the key value exists in the database, a second character string corresponding to the key value in the database is subjected to de-coincidence with the first character string to obtain a third character string;
and taking the third character string as a value, and storing the third character string in the database corresponding to the key value.
The database may be a Redis database.
The Redis database is an in-memory type (namely, memory type) key-value database, is a non-relational database system, data is persistent on a disk, the key type is a character string, and the value type is a character string, a character string Set (Set), a sorted Set, a character string List (List), a Hash (Hash) and the like. The Hash type is a key-value pair set with a character string as a key and a character string as a value, and similar key-value types are maps of character strings.
The Redis database has a mapping relationship between each anchor and a corresponding valid user list.
The method in embodiment 1, by determining the anchor of interest to each active user from the set of active users; and then, determining a second effective user set corresponding to each anchor so as to carry out message pushing on each effective user.
Example 2
Fig. 3 is a flowchart of a anchor-active user maintenance method provided in embodiment 2 of the present specification. From the viewpoint of a program, the execution subject of the flow may be a program installed in an application server or an application client.
Example 2
As shown in fig. 3, in practical application, a mapping relationship table in a database needs to be maintained, and the specific steps are as follows:
s301: and acquiring a timing maintenance time trigger instruction.
S302: and responding to the time trigger instruction, and acquiring a first effective user set corresponding to the current time.
The method comprises the steps of pulling effective USERs at the current time from a push system, and when the number of the effective USERs exceeds a preset number, grouping the effective USERs into a plurality of threads to perform parallel processing, namely, dividing the AVAIL _ USER _ LIST into AVAIL _ USER _ LIST1, AVAIL _ USER _ LIST2, AVAIL _ USER _ LIST3, AVAIL _ USER _ LIST4 \8230, 8230and AVAIL _ USER _ LISTN, and improving the processing efficiency.
S303: and extracting the first effective users in the first effective user set, respectively calling an attention system, and acquiring an anchor list concerned by each first effective user.
S304: extracting all the anchor in the anchor list and generating a second effective user set corresponding to each anchor.
S305: and inquiring whether an effective user set corresponding to the anchor exists in a Map data structure in a database by taking each anchor as an index, and if so, adding data corresponding to a second effective user in the currently generated second effective user set to the tail of an effective user list in the Map data structure to generate a fan list corresponding to each anchor.
S306: and if the fan list does not exist, a fan list corresponding to the anchor is newly built in the Map data structure, and the fan list is the second effective user set.
S307: and inquiring whether a corresponding anchor exists in a database by taking each anchor as an index, and if so, performing de-duplication and combination on the current fan list and the user list existing in the database to generate and store a new effective user list.
S308: and if the fan list does not exist, storing the anchor and the fan list corresponding to the anchor in a database.
And in the time of regular maintenance, updating and maintaining the anchor-effective user list in the database by adopting the method corresponding to the steps every time.
It should be further noted that, during the storage, the data in the database is stored in the form of a character string, specifically, the valid user list corresponding to each anchor is obtained from the Map data structure, the valid user list is converted into a character string (namely, FANS _ STING), and then the anchor is stored in the Redis database as a key and the FANS _ STING is stored as a value.
TABLE 1
Key Value
ANCHOR1 FANS_STING1
ANCHOR 2 FANS_STING2
ANCHOR 3 FANS_STING3
ANCHOR 4 FANS_STING4
Table 1 is a table of the anchor-valid user correspondence existing in the Redis database, the valid user set corresponding to FANS _ STING1 is { a, B, C, D }, the valid user set corresponding to FANS _ STING2 is { E, F, G, H }, the valid user set corresponding to FANS _ STING3 is { a, C, B, H }, and the valid user set corresponding to FANS _ STING4 is { I, J, K, G }. Wherein, fans in fan lists corresponding to different anchor can be overlapped.
Assume that the mapping relationship table of the current anchor and the fan list generated during the timing maintenance is as shown in table 2:
TABLE 2
Key Value
ANCHOR1 FANS_LIST5
ANCHOR3 FANS_LIST6
ANCHOR7 FANS_LIST7
ANCHOR8 FANS_LIST8
Table 2 is a list of newly generated anchor-fans. The effective user set corresponding to the FANS _ LIST5 is { A, B, C, D, E, L }, the effective user set corresponding to the FANS _ LIST6 is { A, C, B, M, N }, the effective user set corresponding to the FANS _ LIST7 is { E, F, J, K }, and the effective user set corresponding to the FANS _ LIST8 is { B, M, J, K }.
Taking the ANCHOR type in the table 2 as an index, searching whether a corresponding key exists in the table 1, comparing the table 1 with the table 2, and finding that ANCHOR1 and ANCHOR3 exist in the table 1, at this time, performing de-overlapping and merging on fan LISTs corresponding to ANCHOR1 in the two tables, namely performing de-overlapping on the fan _ STING1 and the fan _ LIST5, and taking the obtained effective user set as { a, B, C, D, E, L }, and taking the set as the fan _ STING5; performing de-duplication and combination on fan LISTs corresponding to ANCHOR3 in the two tables, namely performing combination and de-duplication on FANS _ STING3 and FANS _ LIST6 to obtain an effective user set { A, C, B, H, M, N }, and taking the effective user set as FANS _ STING6; in addition, ANCHOR7 and ANCHOR8 in the newly generated ANCHOR fan LIST do not exist in table 1, and at this time, ANCHOR7, ANCHOR8 and the corresponding fan LIST are added to table 1, and assuming that FANS _ LIST7 corresponding to ANCHOR7 is converted into a character string of FANS _ STING7 and FANS _ LIST8 corresponding to ANCHOR8 is converted into a character string of FANS _ STING8, the updated maintained ANCHOR-valid user correspondence table of the Redis database may be as shown in table 3:
TABLE 3
Key Value
ANCHOR1 FANS_STING5
ANCHOR 2 FANS_STING6
ANCHOR 3 FANS_STING3
ANCHOR 4 FANS_STING4
ANCHOR7 FANS_STING7
ANCHOR8 FANS_STING8
Table 3 is the anchor-valid user correspondence table updated and maintained in the Redis database. The effective user set corresponding to the FANS _ STING5 is { A, B, C, D, E, L }, the effective user set corresponding to the FANS _ STING6 is { A, C, B, H, M, N }, the effective user set corresponding to the FANS _ STING3 is { A, C, B, H }, the effective user set corresponding to the FANS _ STING4 is { I, J, K, G }, the effective user set corresponding to the FANS _ STING7 is { E, F, J, K }, and the effective user set corresponding to the FANS _ STING8 is { B, M, J, K }.
The method in fig. 2, in the form of timing task, starts from available _ USER, maintains the LIST of full amount of available _ USER, fundamentally solves the problem of filtering a large amount of invalidity, synchronizes the full amount of available _ USER into the system, uses available _ USER to pull ANCHOR (ANCHOR) concerned by available _ USER from ATTENTION _ SYS, and establishes the data relationship, that is, the relationship between ANCHOR and LIST of valid USERs (ANCHOR-available _ USER _ LIST). Specifically, the effective users in the attention system are timely fished, the anchor-effective user list stored in the database is maintained and updated, the large-workload operation of screening the effective users from a large number of fans is avoided, and the information and the effective users corresponding to the anchor can be accurately and timely transmitted when the anchor is started.
Compared with the prior art, the scheme in the embodiment of the specification directly acquires the effective user list corresponding to one or more anchor live broadcasts from the database after receiving one or more anchor live broadcast playing instructions, and the operation process of filtering a large number of fans to obtain effective users is omitted. For example: assuming that the valid user list corresponding to the anchor broadcast a includes 500 valid users, at this time, the 500 users are all valid users, and the live broadcast announcement is directly sent to the 500 users without re-screening, the whole processing time may only need 1-5 minutes, and at this time, when all valid users receive the broadcast announcement, the distance from the live broadcast announcement is about half an hour, so that the valid users can be informed of being ready to watch the live broadcast in time. Therefore, compared with the prior art, the scheme provided by the embodiment of the specification can reduce the cost and pressure of the push system for processing data, has higher message push efficiency, and can realize accurate push.
Based on the same idea, the embodiment of the present specification further provides a device corresponding to the above method. Fig. 4 is a schematic structural diagram of a message pushing apparatus corresponding to fig. 1 provided in an embodiment of this specification. As shown in fig. 4, the apparatus may include:
a first valid user acquiring module 401, configured to acquire a first valid user set; the effective users in the first effective user set are users with active behaviors in a specified time;
an anchor determining module 402, configured to determine an anchor followed by each active user in the first active user set;
a second valid user determining module 403, configured to determine, from the first valid user set, a second valid user set corresponding to each anchor;
a message pushing module 404, configured to push a message to each active user in the second active user set.
The anchor determining module 402 may specifically include:
an anchor determining unit, configured to determine, from an attention system, an anchor corresponding to each active user in the first active user set; the attention system comprises an attention relation between a user and a main broadcasting station.
The second valid user determining module 403 may specifically be configured to:
and classifying and summarizing the effective users by taking each anchor as a dimension to obtain a second effective user set corresponding to each anchor.
The apparatus may specifically further include:
and the first storage module is used for storing the fourth effective user set in a Map data structure form.
And the second storage module is used for storing the corresponding relation between the anchor and the effective user set.
The first storage module may specifically include:
the query module is used for querying whether a third effective user set corresponding to each anchor exists in the Map data structure to obtain a query result;
the judgment processing module is used for performing de-duplication and combination on the third effective user set and the second effective user set to obtain a fourth effective user set when the query result shows that the third effective user set exists in the Map data structure, and storing the fourth effective user set in the form of the Map data structure; and when the query result indicates that the third effective user set does not exist in the Map data structure, storing the second effective user set in the form of the Map data structure.
The second storage module may specifically include:
a second valid user obtaining unit, configured to traverse each Map data structure for each anchor, and obtain, from each Map data structure, a second valid user set corresponding to each anchor;
a conversion unit, configured to convert the second active user set into a first character string;
and the storage unit is used for storing the anchor identification of each anchor as a key value and the first character string as a value in a database.
The storage unit may specifically be configured to:
judging whether the key value exists in the database or not to obtain a judgment result;
and when the judgment result shows that the key value does not exist in the database, storing the key value and the value in the database.
When the judgment result shows that the key value exists in the database, a second character string corresponding to the key value in the database is subjected to de-coincidence with the first character string to obtain a third character string;
and taking the third character string as a value, and storing the third character string in the database corresponding to the key value.
The message pushing module 404 may specifically include:
and a message pushing unit, configured to push a message to each active user in the second active user set before the anchor broadcast.
Based on the same idea, the embodiment of the present specification further provides a device corresponding to the above method.
Fig. 5 is a schematic structural diagram of a message pushing apparatus corresponding to fig. 1 provided in an embodiment of this specification. As shown in fig. 5, the apparatus 500 may include:
at least one processor 510; and (c) a second step of,
a memory 530 communicatively coupled to the at least one processor; wherein, the first and the second end of the pipe are connected with each other,
the memory 530 stores instructions 520 executable by the at least one processor 510 to enable the at least one processor 510 to:
acquiring a first effective user set; the effective users in the first effective user set are users with active behaviors in a specified time;
determining an anchor concerned by each effective user in the first effective user set;
determining a second effective user set corresponding to each anchor from the first effective user set;
and pushing the message to each effective user in the second effective user set.
Based on the same idea, the embodiment of the present specification further provides a computer-readable storage medium corresponding to the above method.
A computer readable storage medium having instructions stored thereon which, when executed by a processor, perform the steps of:
acquiring a first effective user set; the effective users in the first effective user set are users with active behaviors in a specified time;
determining a anchor concerned by each effective user in the first effective user set;
determining a second effective user set corresponding to each anchor from the first effective user set;
and carrying out message pushing on each effective user in the second effective user set.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). Memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrases "comprising a," "8230," "8230," or "comprising" does not exclude the presence of other like elements in a process, method, article, or apparatus comprising the element.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The above description is only an example of the present application and is not intended to limit the present application. Various modifications and changes may occur to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims (11)

1. A message pushing method is characterized by comprising the following steps:
acquiring a first effective user set; the effective users in the first effective user set are users with active behaviors in a specified time; the active behavior represents that the login time reaches a preset time within a specified time or the login frequency conforms to a preset range within the specified time;
determining an anchor followed by each effective user in the first effective user set from an attention system; the attention system comprises an attention relation between a user and a main broadcast; the attention relationship between the user and the anchor in the attention system needs to be updated regularly;
determining a second effective user set corresponding to each anchor from the first effective user set; the second active user set is an active user in the first active user set corresponding to each anchor;
pushing messages to each effective user in the second effective user set;
updating the attention relationship between the user and the anchor in the attention system at regular time, which specifically comprises:
acquiring a timing maintenance time trigger instruction;
and responding to the timing maintenance time trigger instruction, and updating the attention relationship between the user and the anchor in the attention system at regular time.
2. The method according to claim 1, wherein the determining the second active user set corresponding to each anchor specifically includes:
and classifying and summarizing the effective users by taking each anchor as a dimension to obtain a second effective user set corresponding to each anchor.
3. The method of claim 1, wherein after determining the second active set of users for each anchor, further comprising:
and storing the second active user set in a Map data structure form.
4. The method as claimed in claim 3, wherein said storing said second active set of users in a Map data structure form comprises:
inquiring whether a third effective user set corresponding to each anchor exists in the Map data structure or not to obtain an inquiry result;
when the query result shows that the third effective user set exists in the Map data structure, performing de-duplication and combination on the third effective user set and the second effective user set to obtain a fourth effective user set, and storing the fourth effective user set in a Map data structure form;
and when the query result indicates that the third effective user set does not exist in the Map data structure, storing the second effective user set in the form of the Map data structure.
5. The method of claim 3, wherein after storing the second active set of users in a Map data structure, further comprising:
for each anchor, traversing each Map data structure, and acquiring a second effective user set corresponding to each anchor from each Map data structure;
converting the second active set of users into a first string;
and taking the anchor identification of each anchor as a key value, and taking the first character string as a value to be stored in a database.
6. The method according to claim 5, wherein said storing said anchor identification of each anchor as a key value and said first string as a value in a database specifically comprises:
judging whether the key value exists in the database or not to obtain a judgment result;
and when the judgment result shows that the key value does not exist in the database, storing the key value and the value in the database.
7. The method of claim 6, wherein the determining whether the key value is present in the database further comprises:
when the judgment result shows that the key value exists in the database, a second character string corresponding to the key value in the database is subjected to de-coincidence with the first character string to obtain a third character string;
and taking the third character string as a value, and storing the third character string in the database corresponding to the key value.
8. The method of claim 1, wherein the pushing of the message to each active user in the second active user set specifically includes:
and before the main broadcasting, pushing messages to each effective user in the second effective user set.
9. A message push apparatus, comprising:
the first effective user acquisition module is used for acquiring a first effective user set; the effective users in the first effective user set are users with active behaviors in a specified time; the active behavior represents that the login time reaches a preset time within a specified time or the login frequency conforms to a preset range within the specified time;
the anchor determining module is used for determining an anchor concerned by each effective user in the first effective user set from an attention system; the attention system comprises an attention relation between a user and a main broadcasting station; the attention relationship between the user and the anchor in the attention system needs to be updated regularly;
a second effective user determining module, configured to determine, from the first effective user set, a second effective user set corresponding to each anchor; the second active user set is an active user in the first active user set corresponding to each anchor;
the message pushing module is used for pushing messages to all the effective users in the second effective user set;
updating the attention relationship between the user and the anchor in the attention system at regular time, which specifically comprises:
acquiring a timing maintenance time trigger instruction;
and responding to the timing maintenance time trigger instruction, and updating the attention relationship between the user and the anchor in the attention system at regular time.
10. A message push device, comprising:
at least one processor; and the number of the first and second groups,
a memory communicatively coupled to the at least one processor; wherein, the first and the second end of the pipe are connected with each other,
the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the message push method of any one of claims 1-8.
11. A computer-readable storage medium having instructions stored thereon, wherein the instructions, when executed by a processor, implement the steps of any of the methods of claims 1-8.
CN201910071529.5A 2019-01-25 2019-01-25 Message pushing method, device and equipment Active CN109769027B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910071529.5A CN109769027B (en) 2019-01-25 2019-01-25 Message pushing method, device and equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910071529.5A CN109769027B (en) 2019-01-25 2019-01-25 Message pushing method, device and equipment

Publications (2)

Publication Number Publication Date
CN109769027A CN109769027A (en) 2019-05-17
CN109769027B true CN109769027B (en) 2023-04-07

Family

ID=66454418

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910071529.5A Active CN109769027B (en) 2019-01-25 2019-01-25 Message pushing method, device and equipment

Country Status (1)

Country Link
CN (1) CN109769027B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112579905A (en) * 2020-12-25 2021-03-30 百果园技术(新加坡)有限公司 Message push object determining method, device, equipment and storage medium
CN113572841B (en) * 2021-07-23 2023-06-27 上海哔哩哔哩科技有限公司 Information pushing method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109120954A (en) * 2018-09-30 2019-01-01 武汉斗鱼网络科技有限公司 Video messaging method for pushing, device, computer equipment and storage medium
WO2019001080A1 (en) * 2017-06-30 2019-01-03 武汉斗鱼网络科技有限公司 Live broadcast list mirror image display method, live broadcast platform server and client

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104901863B (en) * 2014-03-06 2019-03-01 腾讯科技(深圳)有限公司 Send the method, apparatus and system of instantly prompting message
CN105099894B (en) * 2015-08-28 2018-10-19 广州酷狗计算机科技有限公司 Information push method, apparatus and system
CN105872058B (en) * 2016-04-01 2019-03-19 贵州创鑫旅程网络技术有限公司 A kind of method for pushing and its driving means of live broadcast of mobile terminal information
CN105933720A (en) * 2016-04-28 2016-09-07 徐文波 Live video release notification method and device
CN105979299B (en) * 2016-06-24 2019-06-04 武汉斗鱼网络科技有限公司 Any active ues collection maintenance system and method based on time wheel disc and player heartbeat
CN108989245B (en) * 2017-06-02 2022-03-29 北京云中融信网络科技有限公司 User data storage method and device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019001080A1 (en) * 2017-06-30 2019-01-03 武汉斗鱼网络科技有限公司 Live broadcast list mirror image display method, live broadcast platform server and client
CN109120954A (en) * 2018-09-30 2019-01-01 武汉斗鱼网络科技有限公司 Video messaging method for pushing, device, computer equipment and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
""一直播"的场景传播研究";刘俊瑶;《中国优秀硕士学位论文全文数据库》;全文 *

Also Published As

Publication number Publication date
CN109769027A (en) 2019-05-17

Similar Documents

Publication Publication Date Title
US11513846B1 (en) Distributed data acquisition, indexing and search system
CN103020281B (en) A kind of data storage and retrieval method based on spatial data numerical index
US20150237113A1 (en) Method and system for file transmission
US11188443B2 (en) Method, apparatus and system for processing log data
CN113468199B (en) Index updating method and system
CN109769027B (en) Message pushing method, device and equipment
CN111131368A (en) Message pushing method and device
CN104462096A (en) Public opinion monitoring and analysis method and device
CN111371672A (en) Message pushing method and device
CN104750718A (en) Data information search method and data information search device
CN106557483B (en) Data processing method, data query method, data processing equipment and data query equipment
CN114625407A (en) Method, system, equipment and storage medium for implementing AB experiment
CN113051460A (en) Elasticissearch-based data retrieval method and system, electronic device and storage medium
CN111563123B (en) Real-time synchronization method for hive warehouse metadata
CN107977381B (en) Data configuration method, index management method, related device and computing equipment
CN112749204B (en) Method and device for reading data
CN113849523A (en) Data query method, equipment and medium
CN113704203A (en) Log file processing method and device
CN112668287A (en) Data table determination method, system and device
CN112488836B (en) Transaction transmitting method, device, electronic equipment and readable storage medium
CN105426422B (en) The data processing method and device of Distributed Services
CN113744066B (en) Information pushing method and device
CN114201541A (en) Data extraction method, device, equipment and storage medium
EP4050862A1 (en) Batch deletion method and apparatus for cache contents, device and readable storage medium
CN117478535B (en) Log storage method and device

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
TA01 Transfer of patent application right

Effective date of registration: 20210120

Address after: 511442 3108, 79 Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Applicant after: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 511442 28 / F, building B-1, Wanda Plaza North, Wanbo business district, 79 Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Applicant before: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant