写点什么

技术干货 | 闲鱼:一个优秀的 Push 平台,需要经历怎样的前世今生

发布于: 刚刚
技术干货 | 闲鱼:一个优秀的 Push 平台,需要经历怎样的前世今生

编者荐语:

点击这里,了解 mPaaS 消息推送服务,快速集成多家厂商 Push 通道,有效提高用户留存率,提升用户体验。


以下文章来源于闲鱼技术,作者剑辛


对闲鱼用户来说,因为闲鱼商品库存只有一件,商品的时效性很强,因此当用户关注的卖家上新、浏览的商品发生降价或者平台为用户找到一批高性价比商品时,用户期望尽快被通知。Push 已经成为用户与闲鱼平台联系的重要纽带。


本文将以技术同学视角,介绍闲鱼 Push 从离线手工投放的 1.0 版本进化到智能个性化的 2.0 版本的发展过程,详细说明遇到的问题和技术方案选型,以期给读者带来一些思考和解决类似问题的思路。


闲鱼 Push1.0

当闲鱼 all in 无线后,平台需要把与用户相关的优质内容推送给用户,便于用户快速找到想购买的商品和感兴趣的内容。平台亟需一个 Push 产品化方案保证将优质内容以 Push 的形式触达到用户,提升用户体验。基于这样的前提,闲鱼 Push1.0 方案的主要思路如下:


  1. 计算 Push 用户名单


a. 计算与用户强相关的优质 Push 场景,根据场景得到用户名单


b. 垂直业务根据用户画像等条件,圈选业务的目标人群


2. 基于场景疲劳度过滤每个用户能发送的场景列表


  1. 对每个用户的场景列表进行全局择优,挑选点击率最高的场景作为目标场景


闲鱼 Push1.0 方案简单明了,流程清晰,而且离线流程方便监控告警和问题排查,满足当时的业务需求,上线后运行稳定。在很长一段时间内 1.0 方案的核心架构和流程没有太大变更。但随着业务发展,闲鱼 Push1.0 方案的一些弊端开始暴露,包括


  • Push 用户名单计算不够实时

  • 消息卡片样式不够丰富

  • Push 触发时机单一

  • Push 场景比较少


这些问题最终导致 Push 点击率无法继续提升,触碰到 1.0 方案的天花板。为了解决这些问题,我们对闲鱼 Push 系统进行几个方面的优化升级,并最终重构了闲鱼 Push 系统。

闲鱼 Push1.1

为了给 Push 用户提供更好的用户体验,丰富用户 Push 场景,我们优先考虑从消息样式、触发时机和用户场景几个方面优化扩展现有闲鱼 Push 方案,优化项主要分为消息 feeds 流升级、Push 时间个性化、实时 Push 等。

消息 feeds 流升级

Push 会沉淀到客户端的消息板块,而消息板块也是用户进入闲鱼后浏览最频繁的板块之一,消息样式最开始只支持文本消息和图片消息,这类消息样式的问题是对用户来说有效信息曝光少、而且消息样式单一。为此我们对消息展示形式进行升级,通过 feeds 方式展示消息,提升有效信息曝光率,优化消息样式,打造消息板块的用户心智。feeds 流升级上线后效果明显,因为用户感兴趣的内容相比透出更多,UV 点击率和用户次留相对提升都很大。



第一条为 feeds 流消息,之后是图片消息,相对来说,feeds 流消息可以透出更多有效信息

Push 时间个性化

闲鱼 Push1.0 方案主要支持的是定时批量 Push,实际的运行情况是定时批量给目标用户发 Push。Push 触发时机比较单一,人为造成流量较为集中,增加系统稳定性风险;另外统一的触发时机并不适用于所有用户,存在对部分用户打扰的情况。


针对这种情况,我们优化了 Push 触发时机,由算法根据用户行为计算预测每个用户的触发时机。算法将用户相对平均的分在一天之中,在用户相对活跃的时间段将 Push 触达给用户,减少对活跃用户骚扰,也使得 Push 触达的用户群体分层更加合理健康。

实时 Push

闲鱼 Push1.0 方案主要覆盖的是用户相关离线场景,对用户实时行为产生的场景覆盖不够,而且这类场景较离线场景相比实时性更高,对用户来说相对更重要。针对这个问题,我们增加了对实时场景覆盖,将用户行为抽象成关系模型,以 IFTTT 作为系统整体触发机制。当关系一侧的用户行为发生变更后触发对另一侧的触达,这类场景实时性更强,和用户强相关,提升用户 Push 场景丰富度,增强用户粘性。实时 Push 场景上线后 Push 点击率相对离线场景提升 1 倍以上,具体技术细节可参考《闲鱼IFTTT》。


以上是我们针对闲鱼 Push1.0 的功能优化和增强,通过这些能力也扩展支持了更多场景和业务,最终组合在一起成为闲鱼 Push1.1 版本。

闲鱼 Push 的今生

闲鱼 Push1.1 整体上线后极大提升了用户 Push 场景丰富度和用户体验。随着对 Push 和用户理解的深入,我们发现还有优化提升的空间,包括:


  • 平台视角不够,现有的优化更偏向点对点,需要从闲鱼 Push 平台视角将这些点连成线形成合力,产生 1+1>2 的效果

  • 现有闲鱼 Push 流程的本质还是离线计算,算法无法进行更加实时的个性化和全局择优,对用户体验有一定影响

  • 场景配置不够灵活,新增场景成本高,制约了丰富用户 Push 场景的进度


基于这些原因,我们最终对闲鱼 Push 系统进行重构和升级,打造闲鱼 Push 实时智能投放平台 Hermes。Hermes 取自希腊神话,他聪明(智能)、行动敏捷(快)、多才多艺(多种触达),最能契合闲鱼 Push 实时智能投放平台的使命愿景。

逻辑架构


Hermes 架构与闲鱼 Push1.0 完全不同,以实时为目标,在场景素材准备、算法全局调优和 Push 发送等关键环节实现实时或准实时,提升 Push 内容时效性;另外从平台角度出发,将 Hermes 分为配置中心、匹配中心和任务中心,各个子系统定义交互的数据协议,彼此没有强依赖。三个子系统的作用分别是:


  • 配置中心

  • 配置中心负责维护平台核心数据模型,给业务方提供页面操作配置 Push 场景和素材,降低业务方接入成本;并且把配置数据以离线全量和实时增量的方式同步给算法模型,作为匹配依据。

  • 匹配中心

  • 匹配中心又称为算法择优中心,匹配中心负责训练算法择优模型,根据场景和素材配置为每个用户个性化筛选,根据每个素材历史点击率数据排序,根据用户近期行为召回用户最有可能感兴趣的素材和个性化内容。

  • 任务中心

  • 任务中心负责 Push 触发时机和实际触达,任务中心核心支持定时触发、实时触发和时间个性化触发,目的是对 Push 触发方式收口,为不同的业务和场景选择不同触发方式,帮助业务实现业务目标。另外是对触达进行收口,方便平台编排触达计划,包括触发时间和发送量级,保证达到业务目标同时不会对 Hermes 和业务下游系统造成过大瞬时压力。

业务效果

Hermes 平台上线后效果非常明显,主要表现为:


  • Push 点击率相对提升达到两位数

  • 用户场景覆盖量直接翻倍

  • Push 点击激活的 DAU 也超过历史最高水平

总结

本文介绍了闲鱼 Push 从前世离线计算的 1.0 版本,发展到多项功能优化的 1.1 版本,最终进化成今世的实时智能投放平台的全过程,其实闲鱼 Push 的每个阶段都契合当时业务发展需要,但对于用户体验的无限追求最终产出了闲鱼 Push 实时智能投放平台 Hermes。希望这种方式可以帮助读者理解闲鱼 Push 发展的业务背景和技术方案选型考量。


本文作者:闲鱼技术团队(剑辛



点击这里了解更多 mPaaS 消息推送更多详情。

发布于: 刚刚阅读数: 2
用户头像

App 开发、测试、运营及运维一站式解决方案 2020.08.14 加入

源于蚂蚁集团,致力于提供高效、灵活、稳定的移动研发、管理平台。

评论

发布
暂无评论
技术干货 | 闲鱼:一个优秀的 Push 平台,需要经历怎样的前世今生