技术干货 | 闲鱼:一个优秀的 Push 平台,需要经历怎样的前世今生
简介:mPaaS 消息推送服务,快速集成多家厂商 Push 通道,有效提高用户留存率,提升用户体验。
编者荐语:
点击这里,了解 mPaaS 消息推送服务,快速集成多家厂商 Push 通道,有效提高用户留存率,提升用户体验。
以下文章来源于闲鱼技术,作者剑辛
对闲鱼用户来说,因为闲鱼商品库存只有一件,商品的时效性很强,因此当用户关注的卖家上新、浏览的商品发生降价或者平台为用户找到一批高性价比商品时,用户期望尽快被通知。Push已经成为用户与闲鱼平台联系的重要纽带。
本文将以技术同学视角,介绍闲鱼Push从离线手工投放的1.0版本进化到智能个性化的2.0版本的发展过程,详细说明遇到的问题和技术方案选型,以期给读者带来一些思考和解决类似问题的思路。
闲鱼Push1.0
当闲鱼all in无线后,平台需要把与用户相关的优质内容推送给用户,便于用户快速找到想购买的商品和感兴趣的内容。平台亟需一个Push产品化方案保证将优质内容以Push的形式触达到用户,提升用户体验。基于这样的前提,闲鱼Push1.0方案的主要思路如下:
- 计算Push用户名单
a. 计算与用户强相关的优质Push场景,根据场景得到用户名单
b. 垂直业务根据用户画像等条件,圈选业务的目标人群
2. 基于场景疲劳度过滤每个用户能发送的场景列表
- 对每个用户的场景列表进行全局择优,挑选点击率最高的场景作为目标场景
闲鱼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 消息推送更多详情。
原文链接:https://developer.aliyun.com/article/795398?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
技术干货 | 闲鱼:一个优秀的 Push 平台,需要经历怎样的前世今生相关推荐
- 一个优秀的Push平台,需要经历怎样的前世今生
简介: 没有什么是hermes解决不了的 作者:闲鱼技术-剑辛 对闲鱼的用户来说,Push更是与用户息息相关,因为闲鱼商品库存只有一件,商品的时效性很强,所以当用户关注的卖家上新.浏览的商品发生降价或 ...
- 【冷技术】闲鱼(某里二手转卖平台)如何提高曝光率。
第一感觉就是在CSDN论坛发这个是不是有点乱入了,但是想想还是有点用的哟 作为一个程序员难道没有二手物品要处理的吗?二手电脑应该有的吧,扔了怪可惜的转手还能赚几包烟钱不是 今天我就来讲讲该怎么去提高闲 ...
- Vertica系列:从一些细节看Vertica为什么是一个优秀的数据仓库平台
=========================================== 对象名称可以长到128字符 ========================================== ...
- 一个闲鱼挂机项目,让淘宝用户彻底“躺赢”
闲鱼挂机项目,单号日收益约3元,这个项目比较稳定,并且目前做的人比较少,值得操作,每天仅需2分钟,可无限放大 一.项目介绍 闲鱼币可以用来推广闲鱼的商品,所以很多人需要闲鱼币,也由此产生了买卖:我们通 ...
- 商品卖不动?闲鱼Tellus任务系统来帮你
业务背景 闲鱼作为一款C2X的app,与淘宝.天猫等B2C的业务模式存在天然不同.个人卖家也是普通的消费者,很多个人卖家相比专业卖家,并不清楚如何卖出自己的商品,问题主要表现在以下两个方面: 商品信息 ...
- Flutter企业级应用开发在闲鱼的落地
本文回顾闲鱼引进应用Flutter的过程,并介绍在使用过程中,我们遇到的一系列问题与困难. (文章很长,请耐心阅读,我们在文末给大家赠送闲鱼新书<Flutter企业级应用开发实战>) 闲鱼 ...
- 闲鱼亿级商品结构化背后的思考和演进
来自:闲鱼技术 背景 闲鱼是一个典型的C2C场景的闲置交易平台,每个在闲鱼的用户都能享受到自由交易的乐趣,只要简单的输入商品名,商品价格,库存等信息就能完成一个商品的发布.充分的自由是闲鱼活力的来源, ...
- 闲鱼如何高效承接并处理用户纠纷
背景 闲鱼是一个基于C2C场景的闲置交易平台,每个用户既是买家也是卖家,在自由享受交易乐趣的同时也容易带来一些问题,如发一些侵权违规商品而不自知,发一些带情绪化言语对他人照成了伤害等,因此这也带来了一 ...
- 阿里的社区梦 能靠闲鱼完成吗?
阿里的社区梦 能靠闲鱼完成吗? 作者:王潇其 发表于:2017-01-06 2016年2月,在亚布力中国论坛上,马云首次提出阿里的社区理念.马云说:"社交和社区有着极大差别,腾讯在做社交,而 ...
最新文章
- 2019-03-11-算法-进化(搜索二维矩阵II)
- spring连接jdbc_在Spring JDBC中添加C3PO连接池
- (王道408考研操作系统)第五章输入/输出(I/O)管理-第一节1:I/O设备的概念和分类
- SignalTap II里面Power-Up Trigger的使用
- epcs1s是epcs1系列的么_串行FLASH配置芯片(EPCS1或EPCS4)数据手册
- 基于python的博客设计_基于Pyt hon的博客设计
- 100行代码带你走入免费人工智能平台-百度aistudio
- 好用的日历 android,手机日历软件哪个最好用?日历app排行榜(10款)
- 将云顶之奕或者金铲铲S8导入数据库。
- oracle 查询数据的结果集导出
- UTM的XY坐标转换为WGS84经纬度坐标
- 磁盘检测命令:chkdsk 修复U盘、SFC命令
- 2021工业交换机前十大品牌排行榜,工业交换机哪个牌子好?
- 快手直播弹幕数据采集
- 数据可视化分析教学课件——FineBI实验册节选====医药类专业
- MySQL 集群(三):MySQL + Mycat 实现读写分离,主备切换集群
- Oracle时间与Unix时间戳的转换
- 第三次自考总结——时间管理和学习知识
- 图记逆置单链表的两种方法(C语言)
- 文档管理服务器kass,KASS文档管理系统
热门文章
- Sublime中增加格式化代码的快捷键
- 【chrome错误】Cross origin requests are only supported for protocol schemes: http, data,chrome-extension
- Visual Studio 2022 17.1 正式发布,5个新亮点!
- misc高阶 攻防世界_攻防世界 Misc 进阶题(一)
- Deeplearnng.AI第四部分第一周、卷积神经网络
- spingboot和mybatis,纯注解方式
- 树形结构:优先级队列,堆
- leetcode-350- 两个数组的交集 II
- hdu 6851 Vacation(思维+贪心)
- Django之中间件-CSRF