CN110809050B - 基于流式计算的个性化推送系统及方法 - Google Patents

基于流式计算的个性化推送系统及方法 Download PDF

Info

Publication number
CN110809050B
CN110809050B CN201911092022.4A CN201911092022A CN110809050B CN 110809050 B CN110809050 B CN 110809050B CN 201911092022 A CN201911092022 A CN 201911092022A CN 110809050 B CN110809050 B CN 110809050B
Authority
CN
China
Prior art keywords
unit
information
kafka
user
target 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
CN201911092022.4A
Other languages
English (en)
Other versions
CN110809050A (zh
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.)
Zhizhe Sihai Beijing Technology Co ltd
Original Assignee
Zhizhe Sihai Beijing 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 Zhizhe Sihai Beijing Technology Co ltd filed Critical Zhizhe Sihai Beijing Technology Co ltd
Priority to CN201911092022.4A priority Critical patent/CN110809050B/zh
Publication of CN110809050A publication Critical patent/CN110809050A/zh
Application granted granted Critical
Publication of CN110809050B publication Critical patent/CN110809050B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开涉及一种基于流式计算的个性化推送系统,包括:用户生成单元,被配置成用于生成目标用户信息;用户kafka单元,被配置成用于流式存储目标用户信息;用户消费单元,被配置成用于基于用户kafka单元中的目标用户信息生成请求信息,并基于请求信息调用推荐单元;推荐单元,被配置成用于生成与目标用户信息相对应的推荐内容;结果kafka单元,被配置成用于流式存储推荐内容;以及推送单元,被配置成用于推送存储的推荐内容。本公开的个性化推送系统至少具有以下有益技术效果之一:本公开的个性化推送系统的每个模块独立成一个服务,模块之间通过kafka的生产和消费来衔接,使得该系统能够有效控制请求速率避免推荐服务瘫痪,保证实时推送的顺利进行。

Description

基于流式计算的个性化推送系统及方法
技术领域
本公开涉及网络信息处理领域,具体地,涉及一种基于流式计算的个性化推送系统及方法。
背景技术
随着互联网技术的发展,终端上的应用越来越多,消息推送作为传递信息的一种重要的手段,更是一种有效的拉动活跃的方式,被各大app厂商广泛使用。推送的消息可以是人工指定,也可以是服务根据用户兴趣计算得出。随着推荐系统的成熟,将其应用于推送更加的适合,通过推荐系统可以有效寻找用户关注的焦点,精准定位用户兴趣,推送用户感兴趣的内容,提升推送效果。
推荐系统常常应用于APP的首页feed流(持续更新并呈现给用户内容的信息流)推荐,由用户主动发起请求,系统通过一系列复杂的计算返回推荐结果列表,响应时间控制在毫秒级范围内,具有很高的实时性。与此不同的是,个性化推送是在用户不知情的情况下,主动向用户推送信息,主要关注那些不经常打开APP的人,这些人在个性化推送里占比更高。因此,不能将推荐系统直接应用到个性化推送,服务端需要自动调度触发计算,并将推荐的结果定时发送给用户,该过程为离线过程。遗憾的是,当用户量达到千万级以上时,巨大的用户量要求上述计算过程在尽可能短的时间内完成,导致请求的并发度很高,极易导致推荐过程出现问题,引起个性化推送的失败。
发明内容
有鉴于此,本发明提出了一种灵活的流式计算架构,能够有效将个性化推荐流程解耦为多个模块,大大提升了任务成功率。
在下文中将给出关于本公开的简要概述,以便提供关于本公开的某些方面的基本理解。应当理解,此概述并不是关于本公开的穷举性概述。它并不是意图确定本公开的关键或重要部分,也不是意图限定本公开的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
根据本公开的第一方面,提供了一种基于流式计算的个性化推送系统,包括:
用户生成单元,被配置成用于生成目标用户信息;
用户kafka单元,被配置成用于流式存储目标用户信息;
用户消费单元,被配置成用于基于用户kafka单元中的目标用户信息生成请求信息,并基于请求信息调用推荐单元;
推荐单元,被配置成用于生成与目标用户信息相对应的推荐内容;
结果kafka单元,被配置成用于流式存储推荐内容;以及
推送单元,被配置成用于推送存储的推荐内容。
在一个实施例中,个性化推送系统,还包括被配置成用于存储异常信息的异常处理kafka单元,用户消费单元还被配置成用于根据异常处理kafka单元中的异常信息重新生成请求消息。
在一个实施例中,用户消费单元还被配置成用于当确定调用推荐单元的操作不成功时,在异常处理kafka单元中存储异常信息。
在一个实施例中,推荐单元还被配置成用于当确定生成与目标用户信息相对应的推荐内容的操作不成功时,在异常处理kafka单元中存储异常信息。
在一个实施例中,个性化推送系统,还包括备用kafka单元,结果kafka单元用于存储推荐内容的第一部分,备用kafka单元用于存储推荐内容的第二部分,第一部分的内容质量优于第二部分的内容质量。
在一个实施例中,推送单元被配置成当结果kafka单元中存在第一部分时,从结果kafka单元中获取第一部分并推送;当结果kafka单元中不存在第一部分时,从备用kafka单元中获取第二部分并推送。
在一个实施例中,用户消费单元还被配置成用于修改速率以调整生成请求信息的速率和调用推荐单元的速率。
在一个实施例中,目标用户信息包括符合设定条件的用户的身份信息、标签信息和下发时间信息。
根据本公开的第二方面,提供一种基于流式计算的个性化推送方法,包括:
生成目标用户信息;
流式存储目标用户信息;
基于存储的目标用户信息生成请求信息;
基于请求信息生成与目标用户信息相对应的推荐内容;
流式存储推荐内容;以及
推送存储的推荐内容。
根据本公开的第三方面,提供一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器执行如第二方面的方法。
本公开的技术方案至少具有以下技术效果之一:本公开的基于流式计算的个性化推送系统的每个模块独立成一个服务,模块之间通过Kafka的生产和消费来衔接,使得该系统能够有效控制请求速率避免推荐服务瘫痪,保证实时推送的顺利进行。
附图说明
本公开可以通过参考下文中结合附图所给出的描述而得到更好的理解,附图连同下面的详细说明一起包含在本说明书中并且形成本说明书的一部分。在附图中:
图1示出了根据本公开实施例的基于流式计算的个性化推送系统的结构框图;
图2示出了根据本公开的另一实施例的基于流式计算的个性化推送系统的结构框图;
图3示出了根据本公开的另一实施例的基于流式计算的个性化推送系统的结构框图;
图4示出了根据本公开实施例的基于流式计算的个性化推送方法的流程示意图;
图5示出了实现本公开实施例的电子设备的结构示意图。
具体实施方式
在下文中将结合附图对本公开的示例性实施例进行描述。为了清楚和简明起见,在说明书中并未描述实际实施例的所有特征。然而,应该了解,在开发任何这种实际实施例的过程中可以做出很多特定于实施例的决定,以便实现开发人员的具体目标,并且这些决定可能会随着实施例的不同而有所改变。
在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本公开,在附图中仅仅示出了与根据本公开的方案密切相关的装置结构,而省略了与本公开关系不大的其他细节。
应理解的是,本公开并不会由于如下参照附图的描述而只限于所描述的实施形式。在本文中,在可行的情况下,实施例可以相互组合、不同实施例之间的特征替换或借用、在一个实施例中省略一个或多个特征。
kafka是一个分布式、支持分区、多副本、基于zookeeper协调的分布式消息系统,其最大的特性就是可以实时处理大量数据以满足各种需求场景,其逻辑结构主要包括生产方(producer)、主题(topic)和消费方(consumer),producer将消息推送到topic,由订阅该topic的consumer从topic中拉取消息,因此其非常适合多模块衔接的场景。有鉴于此,本公开提供一种基于流式计算的个性化推送系统,该系统的每个模块独立成一个服务,模块之间通过Kafka的生产和消费来衔接。并且,如果推荐计算失败,不需要上游模块重新发送数据,可以重新消费和计算存储的用户下发数据,并且能够有效控制请求速率避免推荐服务瘫痪,保证实时推送的顺利进行。相比传统的离线推送,本公开的基于流式计算的个性化推送系统优势较为显著。
图1示出了根据本公开实施例的基于流式计算的个性化推送系统100的结构框图。系统100包括用户生成单元110,被配置成用于生成目标用户信息;用户kafka单元120,被配置成用于流式存储目标用户信息;用户消费单元130,被配置成用于基于用户kafka单元120中的目标用户信息生成请求信息,并基于请求信息调用推荐单元140;推荐单元140,被配置成用于生成与目标用户信息相对应的推荐内容;结果kafka单元150,被配置成用于流式存储推荐内容;以及推送单元160,被配置成用于推送存储的推荐内容。以下对各个模块的功能进行详细描述。
用户生成单元110,负责调度和计算出符合设定条件的用户,即目标用户,并对这些目标用户进行打标签处理,这里,设定条件例如可以为已经在APP中注册账号,APP中的推送开关处于打开状态,并且属于活跃用户,这里,判断用户是否为活跃用户,可以依据该用户在某一时间段内的活跃程度来判断,例如,获取用户在90天内登陆APP的次数,根据登录次数确定该用户是否为活跃用户。这里,对用户进行打标签处理,可以为将用户标签确定为高活跃用户或者低活跃用户,例如可以获取用户在某一时间段内登陆APP的次数,登陆次数超过时间段天数的80%,可以认为该用户为高活跃用户,否则,为低活跃用户。另外,考虑到目标用户信息会被写入到用户kafka单元120中进行存储,因此,目标用户信息还包括下发时间信息。
用户kafka单元120,用于流式存储目标用户信息,这里,目标用户信息包括符合设定条件的用户的身份信息、标签信息和下发时间信息,这里的下发时间信息可以为写入用户kafka单元120的时间点信息。目标用户信息采用流式存储的方式存储在用户kafka单元120中,使得用户消费单元130在监听到用户kafka单元120中一旦有新的目标用户信息被写入时,即可消费该目标用户信息。
用户消费单元130,负责实时监听用户kafka单元120中的消息,一旦用户kafka单元120中有新的目标用户信息被写入,则提取该目标用户信息,并基于该目标用户信息生成请求信息,并基于该请求信息调用推荐单元140,也就是说消费该目标用户信息。需要注意的是,考虑到推荐单元140对每秒请求量(qps)有一定的要求,这里,用户消费单元130能够通过修改速率来灵活调整用户消费单元130提取目标用户信息并基于该目标用户信息生成请求信息的速率,以及调用推荐单元140的速率,以避免当请求速率过高,导致推荐单元140或者推荐单元140依赖的其他服务发生崩溃的情况的发生。一旦速率固定后,用户消费单元130可以以固定的速度获取目标用户信息和调用推荐单元140,以保证推荐过程正常有序的进行。
推荐单元140,独立作为一个服务,负责针对目标用户信息计算得到推荐内容。这里,推荐单元140主要的计算过程例如可以为根据目标用户的兴趣召回一些相关内容的候选集,然后采用排序算法对该候选集中的内容进行排序,选择排序结果中的前N条作为推荐内容;另外,执行上述过程中,还可以将目标用户已经浏览过或者已经发送给目标用户的内容过滤掉,和/或采用现有的优化推荐效果的规则来获取更加合理可靠的推荐内容。有鉴于此,以上过程在执行时,推荐单元140可以依赖多个服务,如用户画像、内容画像、用户已读过滤、用户已推过滤和排序等服务。
结果kafka单元150,被配置成用于流式存储推荐内容。推荐内容采用流式存储的方式存储在结果kafka单元150中,使得推送单元160一旦监听到结果kafka单元150中有新的数据写入,则获取该新的数据。
推送单元160,用于获取结果kafka单元150中存储的推荐内容并推送到客户端,也就是说,消费结果kafka单元150中的推荐内容。这里,推送单元160监听结果kafka单元150中的消息,一旦结果kafka单元150中有新的数据写入,则推送单元160获取该新的数据。为了保证发送给客户端的推荐内容的可读性与合理性,推送单元160还可以对推荐内容进行预处理,该预处理例如可以包括过滤、拼接附加信息和人工规则等,具体地可以采用关键词或者黑名单的方式对推荐内容进行过滤,经过预处理后的推荐内容可以在指定时间点发送到客户端。
本公开的基于流式计算的个性化推送系统,该系统的每个模块独立成一个服务,模块之间通过kafka的生产和消费来衔接,使得该系统能够有效控制请求速率避免推荐服务瘫痪,保证实时推送的顺利进行。
图2示出了根据本公开的另一实施例的基于流式计算的个性化推送系统200的结构框图。系统200包括用户生成单元210、用户kafka单元220、用户消费单元230、推荐单元240、结果kafka单元250、推送单元260和异常处理kafka单元270,上述用户生成单元210、用户kafka单元220、用户消费单元230、推荐单元240、结果kafka单元250和推送单元260的具体实现功能与前述实施例相同,此处不再详细描述。考虑到用户消费单元230在调用推荐单元240的过程中会出现调用不成功的情况,因此,本实施例还可以设置异常处理kafka单元270,异常处理kafka单元270被配置成用于存储异常信息,相应地,用户消费单元230还可以被配置成用于根据异常处理kafka单元270中的异常信息重新生成请求消息。另外,异常处理kafka单元270被配置成用于当确定调用推荐单元240的操作不成功时,在异常处理kafka单元270中存储异常信息,这里的异常信息可以为目标用户信息,包括目标用户身份信息、标签信息和下发时间点信息。
另外,考虑到推荐单元240在实现其功能的过程中,需要依赖多个服务,如用户画像、内容画像、用户已读过滤、用户已推过滤和排序等服务,在这种情况下,一旦推荐单元240本身或者其依赖的服务中的任意一个出现问题,都可以导致推荐单元240的功能实现出现问题,因此,在其他实施例中,推荐单元240还可以被配置成用于当确定生成与目标用户信息相对应的推荐内容的操作不成功时,在异常处理kafka单元270中存储异常信息,这里的存储异常信息可以为将推荐内容中的信息置空,而将目标用户信息,包括目标用户身份信息、标签信息和下发时间点信息及时保存。
本实施例通过设置异常处理kafka单元,在故障发生时,通过保存异常信息,使得用户消费单元可以基于保存的信息再次生成推荐内容;本实施例当推荐过程中某个中间环节启动失败时,中间计算结果能够得到保存,避免了需要从头计算导致的故障补救困难,耗费时间长的问题,提升了推荐过程的稳定性。
图3示出了根据本公开的另一实施例的基于流式计算的个性化推送系统300的结构框图。系统300包括用户生成单元310、用户kafka单元320、用户消费单元330、推荐单元340、结果kafka单元350、推送单元360和备用kafka单元370,上述用户生成单元310、用户kafka单元320、用户消费单元330、推荐单元340、结果kafka单元350和推送单元360的具体实现功能与前述实施例相同,此处不再详细描述。在推荐单元340的实现功能不出现问题的情况下,为了避免当发生推荐内容数据丢失时推送单元360无法发送推荐内容,本实施例设置备用kafka单元370,结果kafka单元350用于存储推荐内容的第一部分,备用kafka单元370用于存储推荐内容的第二部分,这里,第一部分和第二部分可以构成全部的推荐内容。优选地,第一部分的内容质量优于第二部分的内容质量,例如,当推荐内容为按照内容质量排序输出的结果时,第一部分可以为排在前十位的推荐内容,第二部分可以为排名在第十一到第二十的推荐内容。这里,备用kafka单元370中的数据用来做兜底数据,用于在推送单元360无法从结果kafka单元350中获取数据时使用。具体地,本实施例中的推送单元360被配置成当结果kafka单元350中存在第一部分时,从结果kafka单元350中获取第一部分并发送到客户端APP;当结果kafka单元350中不存在第一部分时,即数据发生丢失时,从备用kafka单元370中获取第二部分并发送。
本实施例的个性化推送系统,在结果kafka中的推荐内容数据不存在或发生丢失时,通过存储在备用kafka单元370的兜底数据保证推荐内容及时发送到客户端,增强了推荐系统的稳定性。
图4示出了根据本公开实施例的基于流式计算的个性化推送方法400的流程示意图。方法400开始于步骤S410,生成目标用户信息。该步骤可以由用户生成单元110执行。这里,用户生成单元110负责调度和计算出符合设定条件的用户,即目标用户,并对这些目标用户进行打标签处理,这里,设定条件例如可以为已经在APP中注册账号,APP中的推送开关处于打开状态,并且属于活跃用户,这里,判断用户是否为活跃用户,可以依据该用户在某一时间段内的活跃程度来判断,例如,获取用户在90天内登陆APP的次数,根据登录次数确定该用户是否为活跃用户。这里,对用户进行打标签处理,可以为将用户标签确定为高活跃用户或者低活跃用户,例如可以获取用户在某一时间段内登陆APP的次数,登陆次数超过时间段天数的80%,可以认为该用户为高活跃用户,否则,为低活跃用户。另外,考虑到目标用户信息被写入到用户kafka单元中,因此,目标用户信息还包括下发时间信息。
然后,在步骤S420,流式存储目标用户信息。该步骤可以由用户kafka单元120执行。这里,目标用户信息包括符合设定条件的用户的身份信息、标签信息和下发时间信息,这里的下发时间信息可以为写入用户kafka单元的时间点信息。目标用户信息采用流式存储的方式存储在用户kafka单元120中,使得用户消费单元130在监听到用户kafka单元120中一旦有新的目标用户信息被写入时,即可消费该目标用户信息。
然后,在步骤S430,基于存储的目标用户信息生成请求信息。该步骤可以由用户消费单元130执行。用户消费单元130,负责实时监听用户kafka单元120中的消息,一旦用户kafka单元120中有新的目标用户信息被写入,则提取该目标用户信息,并基于该目标用户信息生成请求信息,并基于该请求信息调用推荐单元140,也就是说消费该目标用户信息。需要注意的是,考虑到推荐单元140对每秒请求量(qps)有一定的要求,这里,用户消费单元130能够修改速率来灵活调整用户消费单元130提取目标用户信息并基于该目标用户信息生成请求信息的速率,以及调用推荐单元140的速率,以避免当请求速率过高,导致推荐单元140或者推荐单元140依赖的其他服务发生崩溃的情况的发生。一旦速率相关参数固定后,用户消费单元130可以以固定的速度获取目标用户信息和调用推荐单元140,以保证推荐过程正常有序的进行。
然后,在步骤S440,基于请求信息生成与目标用户信息相对应的推荐内容。该步骤可以由推荐单元140执行。推荐单元140独立作为一个服务,负责针对目标用户信息计算得到推荐内容。这里,推荐单元140主要的计算过程例如可以为根据目标用户的兴趣召回一些相关内容的候选集,然后采用排序算法对该候选集中的内容进行排序,选择排序结果中的前N条作为推荐内容;另外,执行上述过程中,还可以将目标用户已经浏览过或者已经发送给目标用户的内容过滤掉,和/或采用现有的优化推荐效果的规则来获取更加合理可靠的推荐内容。有鉴于此,以上过程在执行时,推荐单元140可以依赖多个服务,如用户画像、内容画像、用户已读过滤、用户已推过滤和排序等服务。
然后,在步骤S450,流式存储推荐内容。该步骤可以由结果kafka单元150执行。推荐内容采用流式存储的方式存储在结果kafka单元150中,使得推送单元160一旦监听到结果kafka单元150中有新的数据写入,则获取该新的数据。
然后,在步骤S460,推送存储的推荐内容。该步骤可以由推送单元160执行。这里,为了保证发送给客户端的推荐内容的可读性与合理性,推送单元160还可以对推荐内容进行预处理,该预处理例如可以包括过滤、拼接附加信息和人工规则等,具体地可以采用关键词或者黑名单的方式对推荐内容进行过滤,经过预处理后的推荐内容可以在指定时间点发送到客户端。
本公开的基于流式计算的个性化推送方法,其采用的系统的每个模块独立成一个服务,模块之间通过kafka的生产和消费来衔接,使得推送方法能够有效控制请求速率避免推荐服务瘫痪,保证实时推送的顺利进行。
图5示出了实现本公开实施例的电子设备500的结构示意图。如图5所示,电子设备500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM503中,还存储有电子设备操作所需的各种程序和数据。CPU 501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,包括承载指令的在计算机可读介质,在这样的实施例中,该指令可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该指令被中央处理单元(CPU)501执行时,执行本发明中描述的各个方法步骤。
尽管已经描述了示例实施例,但是对于本领域技术人员来说显而易见的是,在不脱离本发明构思的精神和范围的情况下,可以进行各种改变和修改。因此,应当理解,上述示例实施例不是限制性的,而是说明性的。

Claims (8)

1.一种基于流式计算的个性化推送系统,包括:
用户生成单元,被配置成用于生成目标用户信息;
用户kafka单元,被配置成用于流式存储所述目标用户信息;
用户消费单元,被配置成用于基于所述用户kafka单元中的所述目标用户信息生成请求信息,并基于所述请求信息调用推荐单元;
推荐单元,被配置成用于生成与所述目标用户信息相对应的推荐内容;
结果kafka单元,被配置成用于流式存储所述推荐内容;以及
推送单元,被配置成用于推送所述存储的所述推荐内容;
所述用户消费单元还被配置成用于调整基于所述目标用户信息生成所述请求信息的速率,以及调整所述调用推荐单元的速率;
所述目标用户信息包括符合设定条件的用户的身份信息、标签信息和下发时间信息,所述下发时间信息为写入用户kafka单元的时间点信息。
2.如权利要求1所述的个性化推送系统,还包括被配置成用于存储异常信息的异常处理kafka单元,所述用户消费单元还被配置成用于根据所述异常处理kafka单元中的异常信息重新生成请求消息。
3.如权利要求2所述的个性化推送系统,其中,所述用户消费单元还被配置成用于当确定所述调用推荐单元的操作不成功时,在所述异常处理kafka单元中存储异常信息。
4.如权利要求2所述的个性化推送系统,其中,所述推荐单元还被配置成用于当确定所述生成与所述目标用户信息相对应的推荐内容的操作不成功时,在所述异常处理kafka单元中存储异常信息。
5.如权利要求1所述的个性化推送系统,还包括备用kafka单元,所述结果kafka单元用于存储所述推荐内容的第一部分,所述备用kafka单元用于存储所述推荐内容的第二部分,所述第一部分的内容质量优于所述第二部分的内容质量。
6.如权利要求5所述的个性化推送系统,所述推送单元被配置成当所述结果kafka单元中存在所述第一部分时,从所述结果kafka单元中获取所述第一部分并推送;当所述结果kafka单元中不存在所述第一部分时,从所述备用kafka单元中获取所述第二部分并推送。
7.一种基于流式计算的个性化推送方法,包括:
由用户生成单元生成目标用户信息;
由用户kafka单元流式存储所述目标用户信息;
由用户消费单元基于所述存储的目标用户信息生成请求信息;
由推荐单元基于所述请求信息生成与所述目标用户信息相对应的推荐内容;
由结果kafka单元流式存储所述推荐内容;以及
由推送单元推送所述存储的所述推荐内容;
所述方法还包括:由用户消费单元调整所述基于所述存储的目标用户信息生成请求信息的速率;
所述目标用户信息包括符合设定条件的用户的身份信息、标签信息和下发时间信息,所述下发时间信息为写入用户kafka单元的时间点信息。
8.一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求7所述的方法。
CN201911092022.4A 2019-11-08 2019-11-08 基于流式计算的个性化推送系统及方法 Active CN110809050B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911092022.4A CN110809050B (zh) 2019-11-08 2019-11-08 基于流式计算的个性化推送系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911092022.4A CN110809050B (zh) 2019-11-08 2019-11-08 基于流式计算的个性化推送系统及方法

Publications (2)

Publication Number Publication Date
CN110809050A CN110809050A (zh) 2020-02-18
CN110809050B true CN110809050B (zh) 2022-11-29

Family

ID=69501850

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911092022.4A Active CN110809050B (zh) 2019-11-08 2019-11-08 基于流式计算的个性化推送系统及方法

Country Status (1)

Country Link
CN (1) CN110809050B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565333A (zh) * 2020-11-03 2021-03-26 南方电网数字电网研究院有限公司 一种基于kafka-connect的数据传递方法
CN112653769A (zh) * 2021-01-08 2021-04-13 青岛海尔科技有限公司 一种消息的推送方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104951570A (zh) * 2015-07-27 2015-09-30 广州九尾信息科技有限公司 基于数据挖掘及lbs的兼职智能推荐系统
CN107026917A (zh) * 2017-06-16 2017-08-08 智者四海(北京)技术有限公司 用于消息推送的方法及系统
CN108874562A (zh) * 2018-06-21 2018-11-23 北京顺丰同城科技有限公司 分布式高并发消息队列推送系统
CN109635186A (zh) * 2018-11-16 2019-04-16 华南理工大学 一种基于Lambda架构的实时推荐方法
CN109729130A (zh) * 2018-04-04 2019-05-07 中国平安人寿保险股份有限公司 信息分析方法、业务服务器、存储介质及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106549990A (zh) * 2015-09-18 2017-03-29 阿里巴巴集团控股有限公司 一种分布式数据的处理方法和系统
US10158682B2 (en) * 2015-09-23 2018-12-18 Adobe Systems Incorporated Power efficient multimedia content streaming based on a server push
CN106658045A (zh) * 2015-10-29 2017-05-10 阿里巴巴集团控股有限公司 一种多媒体数据的云存储、云下载方法及相关装置
CN107103014A (zh) * 2016-10-11 2017-08-29 阿里巴巴集团控股有限公司 历史推送信息的重现方法、装置和系统
CN107070890A (zh) * 2017-03-10 2017-08-18 北京市天元网络技术股份有限公司 一种通信网优系统中的流数据处理装置及通信网优系统
CN109873904B (zh) * 2019-03-05 2021-08-03 平安科技(深圳)有限公司 消息推送的用户消息状态上报处理方法、装置及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104951570A (zh) * 2015-07-27 2015-09-30 广州九尾信息科技有限公司 基于数据挖掘及lbs的兼职智能推荐系统
CN107026917A (zh) * 2017-06-16 2017-08-08 智者四海(北京)技术有限公司 用于消息推送的方法及系统
CN109729130A (zh) * 2018-04-04 2019-05-07 中国平安人寿保险股份有限公司 信息分析方法、业务服务器、存储介质及装置
CN108874562A (zh) * 2018-06-21 2018-11-23 北京顺丰同城科技有限公司 分布式高并发消息队列推送系统
CN109635186A (zh) * 2018-11-16 2019-04-16 华南理工大学 一种基于Lambda架构的实时推荐方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Spark的实时情境推荐系统关键技术研究;龚灿等;《电子测试》;20160215;全文 *

Also Published As

Publication number Publication date
CN110809050A (zh) 2020-02-18

Similar Documents

Publication Publication Date Title
CN109451072A (zh) 一种基于Kafka的消息缓存系统和方法
US11057490B2 (en) Systems and methods for utilizing unused network capacity for prefetch requests
US20180365254A1 (en) Method and apparatus for processing information flow data
CN110809050B (zh) 基于流式计算的个性化推送系统及方法
CN104239132A (zh) 一种唤醒对齐的方法、装置及终端
CN103095743A (zh) 一种灰度发布的处理方法及系统
CN110213203B (zh) 网络调度方法、装置及计算机存储介质
CN112100277A (zh) 一种企业数据上链预言机实现方法、系统、设备及产品
CN110300067A (zh) 队列调整方法、装置、设备及计算机可读存储介质
CN111352806A (zh) 日志数据监控方法及装置
CN113596519A (zh) 对监控设备直播推流的调控方法及电子设备
WO2020168288A1 (en) Churn analysis and methods of intervention
CN113032233A (zh) 分布式服务集群运行时参数自适应处理方法、装置及系统
CN111464826B (zh) 虚拟资源的榜单更新方法、装置、电子设备及存储介质
WO2023082681A1 (zh) 基于批流一体的数据处理方法、装置、计算机设备和介质
CN115081946A (zh) 用电量调控方法、系统、装置、电子设备和计算机介质
CN109558561A (zh) 一种用户行为路径采集方法、装置、设备及介质
CN108306776A (zh) 信息提示方法、装置、系统及计算机可读存储介质
CN106357430A (zh) 一种云计算集群服务状态监控方法和系统
CN110990476B (zh) 数据导入方法、装置、服务器及存储介质
CN117170969A (zh) 服务器集群的运维方法、分区均衡恢复装置、设备和介质
CN113625936A (zh) 数据处理方法、装置、存储介质及设备
CN110515938A (zh) 基于kafka消息总线的数据汇聚存储方法、设备和存储介质
CN107844401A (zh) 数据监控方法、装置和计算机存储介质
CN115119021A (zh) 数据处理方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant