CN108564406B - A kind of method and device for stimulating push - Google Patents

A kind of method and device for stimulating push Download PDF

Info

Publication number
CN108564406B
CN108564406B CN201810325354.1A CN201810325354A CN108564406B CN 108564406 B CN108564406 B CN 108564406B CN 201810325354 A CN201810325354 A CN 201810325354A CN 108564406 B CN108564406 B CN 108564406B
Authority
CN
China
Prior art keywords
activity
determining
item
pushing
time
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
CN201810325354.1A
Other languages
Chinese (zh)
Other versions
CN108564406A (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.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke 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 Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201810325354.1A priority Critical patent/CN108564406B/en
Publication of CN108564406A publication Critical patent/CN108564406A/en
Application granted granted Critical
Publication of CN108564406B publication Critical patent/CN108564406B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0212Chance discounts or incentives
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0225Avoiding frauds

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种激励推送的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:获取与用户的活动指令对应的活动信息;根据所述活动信息确定预推送时间和目标推送物品;当所述预推送时间小于当前时间时,向用户推送所述目标推送物品。该实施方式通过结合物品的实时库存和活动的持续时间对物品进行实时推送,能够在活动持续时间内将物品均匀完全地推送出去,并且相比于传统的激励推送方式,计算效率有很大的提升。

Figure 201810325354

The invention discloses a method and a device for stimulating push, and relates to the technical field of computers. A specific implementation of the method includes: acquiring activity information corresponding to the user's activity instruction; determining a pre-push time and a target push item according to the activity information; when the pre-push time is less than the current time, pushing the pre-push time to the user Target push items. This embodiment pushes the items in real time by combining the real-time inventory of the items and the duration of the activity, so that the items can be pushed out evenly and completely within the duration of the activity, and compared with the traditional incentive push method, the calculation efficiency is greatly improved. promote.

Figure 201810325354

Description

Incentive pushing method and device
Technical Field
The invention relates to the technical field of computers, in particular to a method and a device for incentive pushing.
Background
Currently, a website is a necessary means for attracting the attention of a user, improving the viscosity of the user and motivating pushing. In terms of incentive push, it is common to calculate, at the server, whether the user can obtain a push item in the activity in a specific calculation manner, what push item is obtained, and then inform the front end of the presentation layer. The following modes are mainly adopted: presetting the item pushing rate, pushing in line with a few, and pushing based on a time axis.
In the process of implementing the invention, the inventor finds that at least the following problems exist in the prior art:
1) for the preset item push rate mode: the total number of people participating in the activity needs to be estimated, the pushing rate of each article is set according to the estimated total number of people and the number of articles, and due to the fact that the total number of people participating in the activity is difficult to estimate accurately, the mode often has the situation that the activity is not finished but the articles are pushed completely.
2) For the push mode of meeting "a few": the push sequence needs to be preset according to a certain rule before the start of the activity, and the user obtaining the pushed articles is determined according to the push sequence.
3) For the timeline-based push approach: before the activity starts, the pushing time point of each article needs to be determined according to the activity starting time, the activity ending time and the total quantity of the articles, and all the pushing time points are stored in a database or a cache, so that a large amount of database or cache space is occupied, the reading and writing of an activity system are slow, and the efficiency is low.
Disclosure of Invention
In view of this, the embodiment of the present invention provides an incentive pushing method, which is used for pushing an item in real time by combining real-time inventory of the item and duration of activity, so that the item can be pushed out uniformly and completely within the duration of the activity, and the calculation efficiency is greatly improved compared with a conventional incentive pushing method.
To achieve the above object, according to an aspect of an embodiment of the present invention, there is provided a method for stimulating push, including:
acquiring activity information corresponding to an activity instruction of a user;
determining pre-pushing time and target pushing articles according to the activity information;
and when the pre-pushing time is less than the current time, pushing the target pushing article to the user.
Optionally, determining a pre-push time according to the activity information includes:
determining an activity start time t from the activity information1Time of end of activity t2Total item quantity data N1To do so by
Figure BDA0001626401110000021
As an item push time interval Δ t;
determining a first random number M using a random number generating function1Wherein M is1Is a floating point number and M1∈(0,Δt];
Determining remaining item quantity data N according to the activity information2To [ t ]1+(N1-N2)·Δt+M1]As the pre-push time.
Optionally, determining a target pushed item according to the activity information includes:
determining the information of the remaining articles according to the activity information;
determining a second random number M using a random number generating function2
According to the remaining article information and the second random number M2Determining the target pushed item.
Optionally, according to the remaining item information and the second random number M2Determining the targeted push item, comprising:
determining the identification value of the residual article and residual article quantity data according to the residual article information;
determining the second random number M according to the remaining article quantity data2And the corresponding identification value takes the residual article determined by the corresponding identification value as the target push article.
Optionally, after pushing the target pushed item to the user, further updating the activity information is included.
According to still another aspect of the embodiments of the present invention, there is provided an apparatus for stimulating push, including:
the information acquisition module is used for acquiring activity information corresponding to the activity instruction of the user;
the data determining module is used for determining the pre-pushing time and the target pushing object according to the activity information;
and the pushing module is used for pushing the target pushed article to the user when the pre-pushing time is less than the current time.
Optionally, the determining, by the data determining module, a pre-push time according to the activity information includes:
determining the activity starting time t1, the activity ending time t2 and the total item data N according to the activity information1To do so by
Figure BDA0001626401110000031
As an item push time interval Δ t;
determining a first random number M using a random number generating function1Wherein M is1Is a floating point number and M1∈(0,Δt];
Determining remaining item quantity data N according to the activity information2To [ t ]1+(N1-N2)·Δt+M1]As the pre-push time.
Optionally, the determining, by the data determining module, a target pushed item according to the activity information includes:
determining the information of the remaining articles according to the activity information;
determining a second random number M using a random number generating function2
According to the remaining article information and the second random number M2Determining the target pushed item.
Optionally, the data determination module determines the second random number M according to the remaining item information2Determining the targeted push item, comprising:
determining the identification value of the residual article and residual article quantity data according to the residual article information;
determining the second random number M according to the remaining article quantity data2And the corresponding identification value takes the residual article determined by the corresponding identification value as the target push article.
Optionally, the pushing module further updates the activity information after pushing the target pushed item to the user.
According to another aspect of an embodiment of the present invention, there is provided an electronic device that stimulates pushing, including:
one or more processors;
a storage device 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 implement the method for incentive pushing provided by the present invention.
According to a further aspect of the embodiments of the present invention, there is provided a computer-readable medium, on which a computer program is stored, which when executed by a processor, implements the method for incentivizing push provided by the present invention.
One embodiment of the above invention has the following advantages or benefits: the technical means that the pre-pushing time and the target pushing object are determined according to the acquired activity information, and when the pre-pushing time is smaller than the current time, the target pushing object is pushed to the user is adopted, so that the technical problems that the object cannot be pushed out uniformly and completely and the calculation efficiency is low in the traditional incentive pushing mode are solved, and the technical effect of pushing the object uniformly and completely with high efficiency is achieved.
Further effects of the above-mentioned non-conventional alternatives will be described below in connection with the embodiments.
Drawings
The drawings are included to provide a better understanding of the invention and are not to be construed as unduly limiting the invention. Wherein:
FIG. 1 is a schematic diagram of the main flow of a method of incentivizing push, in accordance with an embodiment of the present invention;
FIG. 2 is a schematic diagram of a system architecture of a method of incentivizing push, in accordance with embodiments of the present invention;
FIG. 3 is a schematic diagram of the main data structure of a method for stimulating push according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of the activity information storage content of a method of incentivizing push, in accordance with an embodiment of the present invention;
FIG. 5 is a schematic diagram of the main steps of a method of stimulating push in accordance with an embodiment of the present invention;
FIG. 6 is a schematic diagram of the main modules of a push-stimulated device according to an embodiment of the present invention;
FIG. 7 is an exemplary system architecture diagram in which embodiments of the present invention may be employed;
fig. 8 is a schematic structural diagram of a computer system suitable for implementing a terminal device or a server according to an embodiment of the present invention.
Detailed Description
Exemplary embodiments of the present invention are described below with reference to the accompanying drawings, in which various details of embodiments of the invention are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope and spirit of the invention. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
Fig. 1 is a schematic diagram of a main flow of a method for motivating push according to an embodiment of the present invention, as shown in fig. 1, including:
step S101, acquiring activity information corresponding to an activity instruction of a user;
step S102, determining pre-pushing time and target pushing articles according to the activity information;
and S103, when the pre-pushing time is less than the current time, pushing the target pushing object to a user.
The incentive push can be in various display forms, such as activities like ' gold-pounding ' egg ', ' big turntable ', ' scratch ' and ' rope-cutting ' on a website, and whether the user of the activity can obtain the pushed articles and what the specific body can obtain the pushed articles can be calculated by a specific calculation mode at the server side, and then the front-end display layer is informed.
The activity instruction refers to instruction information capable of indicating that a user participates in an activity.
The activity instruction can be an effective interaction behavior generated by the system when the user participates in the activity received by the system, such as a click behavior of the user on a preset effective position by using a mouse in a 'gold egg smashing' activity, or a movement behavior of the user on the effective position by pressing a left mouse button in a 'rope cutting' activity.
The target pushed item can be selected from a huge amount of items in the form of lottery tickets and can also be selected from items in the form of entities.
The method and the device determine the pre-pushing time and the target pushed article according to the acquired activity information, and push the target pushed article to the user when the pre-pushing time is less than the current time. When the articles are pushed out uniformly and completely within the activity duration time, the invention abandons the traditional mode of storing all pushing time points in a database in advance in a time axis-based pushing mode, and determines whether each user can obtain the pushed articles and which articles can be obtained in real time by a simple and efficient mode when participating in the activity, thereby not only uniformly and completely distributing the pushing time of the articles in the activity and ensuring the reasonable pushing of the articles, but also having good time complexity and space complexity, and due to the real-time property of the activity, the invention can effectively prevent cheating behaviors.
In some embodiments, determining a pre-push time from the activity information comprises:
determining an activity starting time t1 and an activity ending time t according to the activity information2Total item quantity data N1To do so by
Figure BDA0001626401110000061
As an item push time interval Δ t;
determining a first random number M using a random number generating function1Wherein M is1Is a floating point number and M1∈(0,Δt];
Determining remaining item quantity data N according to the activity information2To [ t ]1+(N1-N2)·Δt+M1]As the pre-push time.
The method has the significance that all articles are pushed out uniformly and completely in each time period of continuous activity, namely, one article is pushed out in each delta t time, and all articles are just pushed out when the activity is finished; wherein the specific push time point is random within each Δ t time, the randomness of which is determined by a first random number M1To realize the operation;
because the pre-push time is determined in real time by a simple algorithm, the time complexity and the space complexity are low, the system operation efficiency is greatly improved, and the bottleneck of system reading and writing can not be generated even under the high concurrency condition; and due to the first random number M1The pre-pushing time is randomly determined in real time, so that the pre-pushing time determined by each user is different, the rule cannot be determined, and cheating behaviors can be effectively prevented.
When a user engages in an activity, there are several situations:
if the articles in the current time period are not pushed, when the user participates in the activity, if the determined pre-pushing time is not less than the current time, the articles are not pushed to the user; if the determined pre-pushing time is less than the current time, pushing the article to the user;
if the articles in the current time period are pushed out, and the pre-pushing time determined when the user participates in the activity is certainly greater than the current time, the articles cannot be pushed to the user;
if no person participates in the activity for a long time, the number of the articles which can be pushed in the remaining time period of the activity is increased, although the overall winning probability is increased, the articles are uniformly distributed, and the defect that the articles cannot be pushed out completely when the activity time is over is avoided.
In some embodiments, determining a targeted push item from the activity information comprises:
determining the information of the remaining articles according to the activity information;
determining a second random number M using a random number generating function2
According to the remaining article information and the second random number M2Determining the target pushed item.
And determining the pre-pushing time and simultaneously determining a target pushed article according to the activity information:
determining the information of the remaining articles according to the activity information, wherein the information of the remaining articles can comprise the types of the remaining articles and the quantity of various articles; if the types of the residual articles are as follows: the first item is nine-fold coupon, the second item is eight-fold coupon, and the third item is seven-fold coupon, wherein 156 pieces of the first item, 90 pieces of the second item and 120 pieces of the third item are remained; the remaining item information may also include each remaining item and the total number of all remaining items;
determining a second random number M by a random number generating function2,M2May be a natural number; such as 222, such as 760;
then according to the residual article information and a second random number M2Determining a target pushed article in the remaining articles;
if the total number of the current remaining articles is N2Numbering all the remaining articles in a self-incrementing manner starting from 1, obtaining 1 to N2Total N2The number is determined, and a second random number M is determined in a preset mode2Corresponding to a certain number, the remaining articles corresponding to the number are the target pushing articles.
According to a second random number M randomly determined in real time2Determining the target pushed item among all remaining items, easy to implement and computationally efficient, and due to the second random number M2The randomness of the method can not appoint the pushed articles obtained by the user in advance, and the cheating behavior is effectively prevented.
In some embodiments, the second random number M is determined based on the remaining item information and the second random number M2Determining the targeted push item, comprising:
determining the identification value of the residual article and residual article quantity data according to the residual article information;
determining the second random number M according to the remaining article quantity data2And the corresponding identification value takes the residual article determined by the corresponding identification value as the target push article.
The identification value of the remaining item may be an identification value of each type of remaining item;
a first item identification value of 202011, a second item identification value of 202012, and a third item identification value of 202013 as determined from the campaign information, wherein the remaining items quantity data is: 156 of the first item, 90 of the second item and 120 of the third item;
when the second random number M is determined2If the item is 222, determining which type of the remaining items the 222 th item is, and taking any item in the remaining item type as the target push item: based on the remaining quantity data 156 for the item identified with value 202011, M is used2-156 ═ 66, when it is determined that the first item is not the target push item, since 66 > 0; m is used further based on the remaining quantity data 90 for the article identified with value 2020122-156-90 ≦ 24, since-24 ≦ 0, when determined with the second random number M2The identification value of 222 is 202012, that is, the second item is determined to be the target push item.
The identification value of the remaining items may also be the identification value of each remaining item;
if all the remaining items are numbered from 1 according to the activity information, the data of the amount of the remaining items is 366, and the identification values of the remaining items are 366 natural numbers from 1 to 366;
when the second random number M is determined2At 760, using 760% 366 ═ 28 according to the remaining item quantity data 366, at which time the second random number M is determined2The identification value of 760 corresponds to 28, that is, the remaining item with the number of 28 is determined as the target pushed item.
In some embodiments, after pushing the targeted pushed item to the user, further comprising updating the activity information. For example, the targeted pushed item is deleted from the remaining items.
When the pre-pushing time is less than the current time, pushing the target pushing object to the user, and then updating activity information in real time, and deleting the target pushing object from the residual objects in the current database so as to ensure that the residual objects in the database when the next user participates in the activity do not have the target pushing object obtained by the current user, so that the activity system operates normally;
updating the activity information may further include: and recording the current time as the latest pushing time.
FIG. 2 is a schematic diagram 200 of a system architecture for a method of incentivizing push, in accordance with an embodiment of the present invention; the method comprises the following steps:
the database 201 can be used for storing activity information stimulated to be pushed and article information stimulated to be pushed;
the activity initialization service 202 may be a task that can be started in a preset time, for example, an activity that is to be started in the next day in a database scanned at 2 am every day may be set; if the current time is 2016-04-2202: 00:00, the activity initialization service 202 scans the activity to be started in 2016-04-23 days, generates activity information to be used in the next day, and stores the activity information in the cache 203;
a cache 203, which may be used to store the activity information generated in the activity initialization service 202;
an incentive push service 204, which may be used to determine whether to push items to the user based on the activity information;
the user 205, may be an object participating in an activity. The activity instructions are generated when the user 205 engages in the activity.
The database 201 is pre-stored with the existing activity information stimulated to be pushed and the article information actively pushed; the activity initialization service 202 reads the activity configuration in the database, generates activity information to be used in the next day, and stores the generated activity information in the cache 203; when the user 205 participates in the activity, an activity instruction is generated, the activity information corresponding to the activity instruction in the cache 203 is read by the incentive push service 204, and whether to push the item to the user 205 is judged in real time.
FIG. 3 is a schematic diagram of the main data structure of a method for stimulating push according to an embodiment of the present invention; the method comprises the following steps:
a lotterysenstance 301, a lotterayaware entry 302.
The lotterysenstance 301 may include: activeID (campaign ID), activeName (campaign name), beginTime (campaign start time), endTime (campaign end time), lotteryAwardMap (campaign pushed item information);
wherein, each element in the lotteryAwardMap is the lotteryawardnentry (item information) 302, which may specifically include: awardID (item ID), awardName (item name), awardCoupon (item information code), awardTotalAmount (total item quantity data), awardBilance (remaining item quantity data), lastUpdateTime (latest push time).
FIG. 4 is a schematic diagram of the activity information storage content of a method of incentivizing push, in accordance with an embodiment of the present invention; the method comprises the following steps:
activity information 401, item information 402.
The activity information 401 may include: activity IDs, such as: 102020, respectively;
activity names, such as: cutting a rope;
activity start times, such as: 2016-04-2210: 00: 00;
end of activity time, such as: 2016-04-2424: 00: 00;
item information for active push, such as: an article list;
each element in the item information pushed by the activity is the item information 402, and specifically may include:
item ID, such as: 202011, respectively;
item names, such as: nine-fold coupons;
an article information code, such as: SKJLKJFHUI 2342;
total item quantity data, such as: 6000;
remaining item quantity data, such as: 6000;
the latest push time, such as: NULL.
FIG. 5 is a schematic diagram of the main steps of a method of stimulating push in accordance with an embodiment of the present invention; the method comprises the following steps:
a user engaging in an activity;
obtaining activity information, including: time t of start of activity1Time of end of activity t2Total item quantity data N1Data on the amount of the remaining product N2Information of the remaining articles;
determining the number of remaining articlesAccording to N2Whether or not it is greater than 0: if N is present2If the item is 0, not pushing the item to the user, and ending the participation of the user in the activity; if N is present2If the user is more than 0, the user continues to participate in the activity;
determining an item push time interval Δ t, a first random number M1A second random number M2: to be provided with
Figure BDA0001626401110000111
Determining a first random number M as an item push time interval Δ t using a random number generation function1A second random number M2
Determining the pre-pushing time and the target pushing article: by [ t ]1+(N1-N2)·Δt+M1]As the pre-pushing time, according to the residual article information and a second random number M2Determining the target pushed item;
judging whether the pre-pushing time is less than the current time: if the pre-pushing time is not less than the current time, not pushing the articles to the user, and ending the participation of the user; if the pre-pushing time is less than the current time, the user continues to participate in the activity;
pushing the target pushed item to a user;
and (3) updating activity information: deleting the target pushed article from the rest articles, and recording the current time as the latest pushing time;
the user engagement activity ends.
Fig. 6 is a schematic diagram of main modules of a device for stimulating push according to an embodiment of the present invention, and as shown in fig. 6, the device 600 for stimulating push includes:
an information obtaining module 601, configured to obtain activity information corresponding to an activity instruction of a user;
a data determining module 602, configured to determine a pre-push time and a target push item according to the activity information;
a pushing module 603, configured to push the target pushed item to a user when the pre-pushing time is less than the current time.
The incentive push can be in various display forms, such as activities like ' gold-pounding ' egg ', ' big turntable ', ' scratch ' and ' rope-cutting ' on a website, and whether the user of the activity can obtain the pushed articles and what the specific body can obtain the pushed articles can be calculated by a specific calculation mode at the server side, and then the front-end display layer is informed.
The activity instruction refers to instruction information capable of indicating that a user participates in an activity.
The activity instruction can be an effective interaction behavior generated by the system when the user participates in the activity received by the system, such as a click behavior of the user on a preset effective position by using a mouse in a 'gold egg smashing' activity, or a movement behavior of the user on the effective position by pressing a left mouse button in a 'rope cutting' activity.
The target pushed item can be selected from a huge amount of items in the form of lottery tickets and can also be selected from items in the form of entities.
The method and the device determine the pre-pushing time and the target pushed article according to the acquired activity information, and push the target pushed article to the user when the pre-pushing time is less than the current time. When the articles are pushed out uniformly and completely within the activity duration time, the invention abandons the traditional mode of storing all pushing time points in a database in advance in a time axis-based pushing mode, and determines whether each user can obtain the pushed articles and which articles can be obtained in real time by a simple and efficient mode when participating in the activity, thereby not only uniformly and completely distributing the pushing time of the articles in the activity and ensuring the reasonable pushing of the articles, but also having good time complexity and space complexity, and due to the real-time property of the activity, the invention can effectively prevent cheating behaviors.
In some embodiments, the data determination module 602 determines a pre-push time according to the activity information, including:
determining an activity start time t from the activity information1Time of end of activity t2Total item quantity data N1To do so by
Figure BDA0001626401110000131
As an item push time interval Δ t;
determining a first random number M using a random number generating function1Wherein M is1Is a floating point number and M1∈(0,Δt];
Determining remaining item quantity data N according to the activity information2To [ t ]1+(N1-N2)·Δt+M1]As the pre-push time.
The method has the significance that all articles are pushed out uniformly and completely in each time period of continuous activity, namely, one article is pushed out in each delta t time, and all articles are just pushed out when the activity is finished; wherein the specific push time point is random within each Δ t time, the randomness of which is determined by a first random number M1To realize the operation;
because the pre-push time is determined in real time by a simple algorithm, the time complexity and the space complexity are low, the system operation efficiency is greatly improved, and the bottleneck of system reading and writing can not be generated even under the high concurrency condition; and due to the first random number M1The pre-pushing time is randomly determined in real time, so that the pre-pushing time determined by each user is different, the rule cannot be determined, and cheating behaviors can be effectively prevented.
When a user engages in an activity, there are several situations:
if the articles in the current time period are not pushed, when the user participates in the activity, if the determined pre-pushing time is not less than the current time, the articles are not pushed to the user; if the determined pre-pushing time is less than the current time, pushing the article to the user;
if the articles in the current time period are pushed out, and the pre-pushing time determined when the user participates in the activity is certainly greater than the current time, the articles cannot be pushed to the user;
if no person participates in the activity for a long time, the number of the articles which can be pushed in the remaining time period of the activity is increased, although the overall winning probability is increased, the articles are uniformly distributed, and the defect that the articles cannot be pushed out completely when the activity time is over is avoided.
In some embodiments, the data determination module 602 determines the targeted push item according to the activity information, including:
determining the information of the remaining articles according to the activity information;
determining a second random number M using a random number generating function2
According to the remaining article information and the second random number M2Determining the target pushed item.
And determining the pre-pushing time and simultaneously determining a target pushed article according to the activity information:
determining the information of the remaining articles according to the activity information, wherein the information of the remaining articles can comprise the types of the remaining articles and the quantity of various articles; if the types of the residual articles are as follows: the first item is nine-fold coupon, the second item is eight-fold coupon, and the third item is seven-fold coupon, wherein 156 pieces of the first item, 90 pieces of the second item and 120 pieces of the third item are remained;
the remaining item information may also include each remaining item and the total number of all remaining items;
determining a second random number M by a random number generating function2,M2May be a natural number; such as 222, such as 760;
then according to the residual article information and a second random number M2Determining a target pushed article in the remaining articles;
if the total number of the current remaining articles is N2Numbering all the remaining articles from the beginning in a self-incrementing manner, obtaining 1 to N2Total N2And determining that the second random number M corresponds to a certain number in a preset mode, wherein the remaining articles corresponding to the number are the target pushed articles.
According to a second random number M randomly determined in real time2Targeting push items among all remaining items, easy to implement and computationally efficient, and due to the secondTwo random numbers M2The randomness of the method can not appoint the pushed articles obtained by the user in advance, and the cheating behavior is effectively prevented.
In some embodiments, the data determination module 602 determines the second random number M based on the remaining item information and the second random number M2Determining the targeted push item, comprising:
determining the identification value of the residual article and residual article quantity data according to the residual article information;
determining the second random number M according to the remaining article quantity data2And the corresponding identification value takes the residual article determined by the corresponding identification value as the target push article.
The identification value of the remaining item may be an identification value of each type of remaining item; a first item identification value of 202011, a second item identification value of 202012, and a third item identification value of 202013 as determined from the campaign information, wherein the remaining items quantity data is: 156 of the first item, 90 of the second item and 120 of the third item;
when the second random number M is determined2If the item is 222, determining which type of the remaining items the 222 th item is, and taking any item in the remaining item type as the target push item: based on the remaining quantity data 156 for the item identified with value 202011, M is used2-156 ═ 66, when it is determined that the first item is not the target push item, since 66 > 0; m is used further based on the remaining quantity data 90 for the article identified with value 2020122-156-90 ≦ 24, since-24 ≦ 0, when determined with the second random number M2The corresponding identification value is 202012, that is, the second item is determined to be the target push item.
The identification value of the remaining items may also be the identification value of each remaining item; if all the remaining items are numbered from 1 according to the activity information, the data of the amount of the remaining items is 366, and the identification values of the remaining items are 366 natural numbers from 1 to 366;
when the second random number M is determined2760 is according toRemaining item quantity data 366, using 760% 366 ═ 28, when determined with the second random number M2The identification value of 760 corresponds to 28, that is, the remaining item with the number of 28 is determined as the target pushed item.
In some embodiments, the pushing module 603 further comprises updating the activity information after pushing the targeted pushed item to the user. For example, the targeted pushed item is deleted from the remaining items.
When the pre-pushing time is less than the current time, pushing the target pushing object to the user, and then updating activity information in real time, and deleting the target pushing object from the residual objects in the current database so as to ensure that the residual objects in the database when the next user participates in the activity do not have the target pushing object obtained by the current user, so that the activity system operates normally;
updating the activity information may further include: and recording the current time as the latest pushing time.
Fig. 7 illustrates an exemplary system architecture 700 of a method or apparatus for incentivizing push to which embodiments of the present invention may be applied.
As shown in fig. 7, the system architecture 700 may include terminal devices 701, 702, 703, a network 704, and a server 705. The network 704 serves to provide a medium for communication links between the terminal devices 701, 702, 703 and the server 705. Network 704 may include various connection types, such as wired, wireless communication links, or fiber optic cables, to name a few.
A user may use the terminal devices 701, 702, 703 to interact with a server 705 over a network 704, to receive or send messages or the like. The terminal devices 701, 702, 703 may have installed thereon various communication client applications, such as a shopping-like application, a web browser application, a search-like application, an instant messaging tool, a mailbox client, social platform software, etc. (by way of example only).
The terminal devices 701, 702, 703 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and the like.
The server 705 may be a server providing various services, such as a background management server (for example only) providing support for shopping websites browsed by users using the terminal devices 701, 702, 703. The backend management server may analyze and perform other processing on the received data such as the product information query request, and feed back a processing result (for example, target push information, product information — just an example) to the terminal device.
It should be noted that the method for incentive push provided by the embodiment of the present invention is generally executed by the server 705, and accordingly, the apparatus for incentive push is generally disposed in the server 705.
It should be understood that the number of terminal devices, networks, and servers in fig. 7 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
Referring now to FIG. 8, shown is a block diagram of a computer system 800 suitable for use with a terminal device implementing an embodiment of the present invention. The terminal device shown in fig. 8 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present invention.
As shown in fig. 8, the computer system 800 includes a Central Processing Unit (CPU)801 that can perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)802 or a program loaded from a storage section 808 into a Random Access Memory (RAM) 803. In the RAM 803, various programs and data necessary for the operation of the system 800 are also stored. The CPU 801, ROM 802, and RAM 803 are connected to each other via a bus 804. An input/output (I/O) interface 805 is also connected to bus 804.
The following components are connected to the I/O interface 805: an input portion 806 including a keyboard, a mouse, and the like; an output section 807 including a signal such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker; a storage portion 808 including a hard disk and the like; and a communication section 809 including a network interface card such as a LAN card, a modem, or the like. The communication section 809 performs communication processing via a network such as the internet. A drive 810 is also connected to the I/O interface 805 as necessary. A removable medium 811 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 810 as necessary, so that a computer program read out therefrom is mounted on the storage section 808 as necessary.
In particular, according to the embodiments of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program can be downloaded and installed from a network through the communication section 809 and/or installed from the removable medium 811. The computer program executes the above-described functions defined in the system of the present invention when executed by the Central Processing Unit (CPU) 801.
It should be noted that the computer readable medium shown in the present invention can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present invention, a computer 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. In the present invention, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and 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 computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The modules described in the embodiments of the present invention may be implemented by software or hardware. The described modules may also be provided in a processor, which may be described as: a processor includes a sending module, an obtaining module, a determining module, and a first processing module. The names of these modules do not form a limitation on the modules themselves in some cases, and for example, the sending module may also be described as a "module sending a picture acquisition request to a connected server".
As another aspect, the present invention also provides a computer-readable medium that may be contained in the apparatus described in the above embodiments; or may be separate and not incorporated into the device. The computer readable medium carries one or more programs which, when executed by a device, cause the device to comprise: step S101, acquiring activity information corresponding to an activity instruction of a user; step S102, determining pre-pushing time and target pushing articles according to the activity information; and S103, when the pre-pushing time is less than the current time, pushing the target pushing object to a user.
According to the technical scheme of the embodiment of the invention, the technical means that the pre-pushing time and the target pushing object are determined according to the acquired activity information, and when the pre-pushing time is less than the current time, the user is determined to acquire the target pushing object is adopted, so that the technical problems that the object cannot be pushed out uniformly and completely and the calculation efficiency is low in the traditional incentive pushing mode are solved, and the technical effect of pushing the object uniformly and completely with high efficiency is achieved.
The above-described embodiments should not be construed as limiting the scope of the invention. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions can occur, depending on design requirements and other factors. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (10)

1. A method of incentivizing push, comprising:
acquiring activity information corresponding to an activity instruction of a user; the activity instruction is effective interactive behavior generated by the system when the user participates in the activity and received by the system;
determining pre-pushing time and target pushing articles according to the activity information; the target pushed item is selected from a huge number of items;
when the pre-pushing time is less than the current time, pushing the target pushing article to a user;
wherein, determining the pre-pushing time according to the activity information comprises: determining an activity start time t from the activity information1Time of end of activity t2Total item quantity data N1To do so by
Figure FDA0002953479310000011
As an item push time interval Δ t; determining a first random number M using a random number generating function1Wherein M is1Is a floating point number and M1∈(0,Δt](ii) a Determining remaining item quantity data N according to the activity information2To [ t ]1+(N1-N2)·Δt+M1]As the pre-push time.
2. The method of claim 1, wherein determining a targeted push item based on the activity information comprises:
determining the information of the remaining articles according to the activity information;
determining a second random number M using a random number generating function2
According to the remaining article information and the second random number M2Determining the target pushed item.
3. Method according to claim 2, characterized in that, based on the remaining item information and the second random number M2Determining the targeted push item, comprising:
determining the identification value of the residual article and residual article quantity data according to the residual article information;
determining the second random number M according to the remaining article quantity data2And the corresponding identification value takes the residual article determined by the corresponding identification value as the target push article.
4. The method of claim 3, further comprising updating the activity information after pushing the targeted pushed item to a user.
5. An apparatus for stimulating propulsion, comprising:
the information acquisition module is used for acquiring activity information corresponding to the activity instruction of the user; the activity instruction is effective interactive behavior generated by the system when the user participates in the activity and received by the system;
the data determining module is used for determining the pre-pushing time and the target pushing object according to the activity information; the target pushed item is selected from a huge number of items;
the pushing module is used for pushing the target pushing object to a user when the pre-pushing time is less than the current time;
the data determining module determines a pre-pushing time according to the activity information, and the pre-pushing time comprises the following steps: determining an activity start time t from the activity information1Time of end of activity t2Total item quantity data N1To do so by
Figure FDA0002953479310000021
As an item push time interval Δ t; determining a first random number M using a random number generating function1Wherein M is1Is a floating point number and M1∈(0,Δt](ii) a Determining remaining item quantity data N according to the activity information2To [ t ]1+(N1-N2)·Δt+M1]As the pre-push time.
6. The apparatus of claim 5, wherein the data determination module determines the targeted push item based on the activity information, comprising:
determining the information of the remaining articles according to the activity information;
determining a second random number M using a random number generating function2
According to the remaining article information and the second random number M2Determining the target pushed item.
7. The apparatus of claim 6, wherein the data determination module is configured to determine the second random number M based on the remaining item information and the second random number M2Determining the targeted push item, comprising:
determining the identification value of the residual article and residual article quantity data according to the residual article information;
determining the second random number M according to the remaining article quantity data2And the corresponding identification value takes the residual article determined by the corresponding identification value as the target push article.
8. The apparatus of claim 7, wherein the pushing module further comprises updating the activity information after pushing the targeted pushed item to the user.
9. An electronic device that stimulates pushing, comprising:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement the method of any one of claims 1-4.
10. A computer-readable medium, on which a computer program is stored, which, when being executed by a processor, carries out the method according to any one of claims 1-4.
CN201810325354.1A 2018-04-12 2018-04-12 A kind of method and device for stimulating push Active CN108564406B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810325354.1A CN108564406B (en) 2018-04-12 2018-04-12 A kind of method and device for stimulating push

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810325354.1A CN108564406B (en) 2018-04-12 2018-04-12 A kind of method and device for stimulating push

Publications (2)

Publication Number Publication Date
CN108564406A CN108564406A (en) 2018-09-21
CN108564406B true CN108564406B (en) 2021-05-25

Family

ID=63534831

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810325354.1A Active CN108564406B (en) 2018-04-12 2018-04-12 A kind of method and device for stimulating push

Country Status (1)

Country Link
CN (1) CN108564406B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110458996A (en) * 2019-07-05 2019-11-15 平安国际智慧城市科技股份有限公司 Probability adjustment method, device, equipment and storage medium based on social platform lottery
CN114915652B (en) * 2022-03-30 2024-03-15 北京奇艺世纪科技有限公司 Message pushing method and device, electronic equipment and storage medium

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130275192A1 (en) * 2011-06-24 2013-10-17 Nebil Ben Aissa Social Network Driven Real-Time Multi-Player, Multi-Merchant, Multi-Bucket Discounting Social Commerce System With Value Tracking, Multi-Layer Commission Forwarding and Discount Processing Systems and Related Methods
CN105023169A (en) * 2015-06-19 2015-11-04 默科资讯股份有限公司 Method and system for sending and pushing electronic information
CN105761104A (en) * 2016-02-05 2016-07-13 腾讯科技(深圳)有限公司 Information processing method and server
CN105869018A (en) * 2016-04-01 2016-08-17 赵忠义 Reward push method and system thereof
CN107818479B (en) * 2017-10-27 2021-03-05 携程旅游网络技术(上海)有限公司 Preferential information pushing method, system, storage medium and electronic equipment
CN107846478A (en) * 2017-12-21 2018-03-27 知而行(上海)营销咨询有限公司 Information-pushing method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"基于地理定向的移动优惠券策略";邹翔;《系统管理学报》;20160915;第948-954页 *
"网易有钱电子优惠券系统的设计与实现";陈云;《中国优秀硕士学位论文全文数据库 信息科技辑》;20180215;I138-912 *

Also Published As

Publication number Publication date
CN108564406A (en) 2018-09-21

Similar Documents

Publication Publication Date Title
CN109840734A (en) Information output method and device
US20110276400A1 (en) Online Advertisement Storage and Active Management
WO2018019139A1 (en) Information pushing method and device
WO2019027704A1 (en) Method and system for segmentation as a service
WO2019034160A1 (en) Information display method and device
CN109087139B (en) Advertisement putting method and device for feed stream
CN112784152A (en) Method and device for marking user
CN108564406B (en) A kind of method and device for stimulating push
CN108874836B (en) Method and device for transferring electronic coupons
CN113194109A (en) Method and device for pushing information
JP6313499B1 (en) System, method and program for managing messages
CN112348612B (en) Order generation method and device
US20230053859A1 (en) Method and apparatus for outputting information
CN113256280A (en) Red packet issuing method and device
CN115665075B (en) Data push method, system, electronic device and medium for message queue
CN106789568A (en) A kind of communication information acquisition methods and device
CN119941319A (en) A method and device for managing rights and interests
CN109033343B (en) Method and apparatus for generating information
CN111290761A (en) Grayscale publishing method, device, medium and electronic device
CN107851290B (en) History management method
CN113971245A (en) Information pushing method, device and system
CN112968769A (en) Method and device for generating random number in block chain
CN112749929A (en) Method and device for goods distribution and ordering by user
CN112348546A (en) Information processing method and device
CN112527826B (en) Method and device for processing request

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