公司:海拍客
面向复杂业务场景的微中台框架设计实践
在面对平时的业务功需求迭代时,相信大家都会面临一个代码复杂度和后续的维护高成本的问题,下面我们主要针对营销返利活动场景,对复杂的业务场景的代码设计进行详细的讲解。
海拍客见证体系实践
经济趋势
国家大力推动“互联网+”发展的背景下,涌现了众多的互联网企业。同时,中大型企业也纷纷尝试通过自建电子商务平台加速转型升级,以整合供应链上下游资源。互联网支付也面临着很多资金安全问题以及监管问题。
监管要求
监管部门禁止没有支付牌照和支付资格的互联网平台开展网络支付业务,禁止其以自身名义搭建具有金融属性的类电子账户,禁止私设不具有真实交易背景、不受金融机构管控的资金池。
《非金融机构支付服务管理办法》
“非金融机构提供支付服务,应当依据本办法规定取得《支付业务许可证》,成为支付机构。”
说明1-1:
二清,简单来说就是在未持有《支付业务许可证》的时候,从事资金清结算业务。举个场景的例子吧,比如一个撮合型电商平台,消费者支付了100元后,资金是进入到平台账户,待店铺提供了产品或者服务后,再将资金结算给店铺,这就是我们所谓的二清。二清的风险在于,代收消费者资金容易形成具备金融属性的“资金池”。可以想象,一个初具规模的电商平台,日交易额几百万甚至几千万。这么庞大的资金,原本大头部分是给入驻的店铺的,但滞留在平台就很能引发挪用或者卷款的风险。
召回系统在海拍客的实践
推荐系统通常可以分为召回、粗排、精排、重排四个阶段,召回主要是根据不同策略或模型从海量的物品库中快速筛选出一小部分用户可能感兴趣的物品,交由排序模型来精准地完成个性化排序,本文主要阐述召回在算法侧的工作原理以及召回系统工程侧落地实践。
海拍客 低代码搭建平台-“梵高”的设计与实践
海拍客内部有很多后台系统,包括配置,OPS,管理,监控等等。现有的前端资源不足以覆盖完所有的需求,经常出现串行排队的现象。
哪怕人员再高效,熟练,哪怕需求再简单,哪怕页面风格高度统一,但是沟通,开发,联调,测试,发布,这一大串流程走下来,还是会有些心有余而力不足。
因此,我们迫切需要创造一个强大高效的平台,用来规模化,标准化,高效化地搞定这些事情,提高研发产能 低代码搭建平台“梵高”应运而生。
图像算法在海拍客的应用
声音、文字、图片都是信息的载体,其中图片传递的信息更直观、更丰富。人们对于图片信息也更乐于接受,有研究表明人类通过视觉接收超过80%的信息。合理的利用图片,可以从中获取对我们有用的信息,以辅助我们做出决策,同时,我们也可以将这些信息再传递给他人。海拍客作为全国最大的母婴B2B2C电商平台,涉及20多万家母婴门店以及10多万商品,其中也包含了大量的图片,这些图片有各个商品的图片、门店内部陈列照片等。为了充分发挥这些图片的价值,我们对图像算法加以实践。
商详中台
商详,顾名思义,就是商品详情页,商品详情是海拍客各商场业务购物主流程必不可少的一环。每次新业务搭建一个新商城,都会需要搭建一个新的商品详情页面。商品详情页作为用户了解商品(基本信息、价格、图片等)及相关信息(促销、优惠、服务、评价、店铺信息、商品推荐)的主要页面,通过这些信息来确定加购或者下单,最终引导成交。为了能够引导用户更多成交,各个业务都希望在商详添加业务价值信息在商详情露出,业务需求改动比较频繁;作为下单的核心链路,商品详情页需要保证高可用,确保不会中断用户下单。在稳定和高效的双重压力下下,急需对目前的商详的业务和技术实现进行体系化的梳理,然后做思考架构的演进方向。
I/O优化,单车变摩托
是服务器选型选配没有做好导致的问题,还是系统问题,文件系统问题?
海拍客埋点质量保障体系建设
埋点作为商业智能体系中重要的一环,为公司提升产品功能、实施AB Testing、流量分析等业务决策方面提供了数据支撑。随着海拍客业务快速发展,对于精细化流量运营的需求不断提升,埋点数据质量差的问题也逐渐凸显出来,但埋点质量保障又是个老大难的问题,主要体现在以下几个方面:
- 埋点链路涉及团队非常多,包含业务方,pd,开发(后端,前端,客户端,数据),测试,bi等多团队人员,各团队职责边界及团队协作问题,难度很大;
- 缺少相应流程规范和系统保障,导致其中任何一个环节出错,都会影响整个埋点数据准确性,而且问题往往发现的不及时;
- 涉及多端业务,包含ios,安卓端,web端,各c端小程序等,对不同端上的埋点数据保障和测试回归效率问题,带来了很大挑战;
因此,针对这样一个长链路 & 多端复杂数据问题,我们开启了埋点质量保障体系建设之路。
APP UI自动化测试平台&埋点测试
埋点是在应用中特定的流程收集一些信息,用来跟踪应用使用的情况,后续用来进一步优化产品或是提供运营的数据支撑。
一个APP及其背后的系统发展到一定程度,主要功能基本定型,想要持续保持用户关注度和使用率,再靠持续增加新功能来吸引客户留住客户就很难了。一般都是通过运营、内容、优惠活动等方式来保持用户的新鲜感和吸引眼球。通过在APP中插入埋点,来统计分析用户的使用习惯、偏好等信息,进而帮助我们通过修改页面布局、创建活动等方式来运营。
埋点重要,但埋点是否有效及正确与否,通过人工测试的方式是效率很低的,常用的方式就是人工操作APP,再通过抓包工具查看是否有埋点接口和参数上报,或者通过查询日志来查看数据是否被保存成功。如果能有一套自动化测试工具,就能极大提升效率,解放人力。
海拍客门店应季属性挖掘
品牌和门店是海拍客平台的主体,针对门店和商品的营销生命周期的建设也是产品和业务一直在构建和优化的基础设之一;此次的“品牌门店营销生命周期”项目也是基于此背景和需要提出的具体方案,该方案的核心有两块:基于商品视角的门店生命周期画像和基于门店视角的门店偏好画像;前者在推荐系统,搜索系统等渠道中已经有了相应的落地和应用,但后者一直是我们平台的短板;尤其是门店对品牌的偏好,对购买时间的偏好,对单品的复购周期,对应季品的偏好等的挖掘。该博客正在在此业务背景中分享算法组在门店应季品,应季属性方面的挖掘实践。
正如前文介绍,门店应季属性 一直是业务和产品想挖掘的一个痛点,该属性的精准定位可以有效帮助门店及时发掘应季商品,不仅提升门店的销量同时也降低了门店的品类运营成本;但在以往的方案中,不管是通过业务规则还是在推荐系统中,对门店应季属性的发掘和认知都是后验性的,没有有效的方案可以提前准确匹配,只有等到这段时间之后才能通过统计或者经验汇总一部分应季品类,无法有效解决门店应季商品的问题;基于此业务背景,通过业务规则和统计方法构建了这一套门店应季属性的挖掘方案,以满足门店应季属性提前精准匹配的业务需求。
微服务架构下的全链路灰度发布
在业系统的迭代过程中,系统的测试用例的覆盖率依赖于测试人员对系统的熟悉程度的,即使是全部做白盒测试,也比较难保证100%的覆盖率,同时测试用例本身的正确性保证也是一个问题。基于这个前提,系统的发布就是有一定的概率会对线上用户的正常使用造成影响,引发客诉的。既然线上发布带来的问题,没办法100%避免,那缩小发布的影响范围就非常必要。
灰度发布就是一种缩小问题影响范围的常规手段。所谓灰度发布,就是使用技术手段,让线上发布的功能仅对线上部分用户可见,这样新发布仅会影响这一部分用户,不会影响其他用户。
JFR应用之通过TLAB事件分析应用性能
尽量避免大对象的使用,大对象无法利用栈上分配和TLAB的JVM优化,会带来显著的性能下降,当然对GC也十分不友好。
从121我的页面分析小程序登录和授权
目前APP+小程序的轻应用模式已经成为一种流行趋势,海拍客为了进驻toc市场,提升门店线上卖货的能力,推出了121小程序,目前在如火如荼的进行中。
说到小程序,一定绕不开的就是登录和授权, 好的登录授权流程和容错机制能够帮助小程序维持好的用户体系和保证功能的正常使用。
虽然看官方文档感觉就几个api很简单,但是为了保证121能够稳定的运行,避免因登录授权问题导致应用的阻塞,需要对这个流程好好打磨一下。
针对我在我的页面在静默登录、用户登录、用户信息授权相关开发流程中出现的问题和解决方法,以及一些个人思考,分享下小程序登录授权相关的内容。
推荐系统Embedding技术回顾
在许多自然语言处理(NLP)任务中,通常会使用神经网络将单词从高维稀疏向量转变为单词嵌入(Word Embedding),即单词的低维表示[1], 随着神经网络在各个领域应用的发展,这个概念已经扩展到NLP领域之外的其他应用。研究人员希望用Embedding的方式来更好的描述某些特征或者某些特定实体(Entity)。2013年,Bengio等[2] 扩展了这一概念,这里有一段直接引用,“...人们非常希望减少算法对特征工程的依赖,...人工智能只有学会识别和解开隐藏在低水平数据中的潜在特征,才能实现这一目标。”在这之后甚至出现了一门新的学科:表示学习(Representation Learning)。这一技术也迅速运用到推荐系统及推荐排序模型中,使用深度学习进行推荐的早期阶段的Wide&Deep[3]、YoutubeNet[4]中就出现了Embedding技术。并且由于Embedding技术能和NLP领域的其他技术很好的结合在一起,很多NLP的技术也由此迁移而来,带动了深度学习技术在搜广推领域的发展。
本文将回顾Embedding技术的由来,介绍它的算法及改进,以及它在搜广推领域的运用。
海拍客全链路压测实践
全链路压测在海拍客已经有2~3年的实践。海拍客是一家母婴互联网产业平台,致力于将海内外新的品牌、新的知识、好的消费理念通过全中国母婴店,带给三线以下城市的消费者,帮助消费者完成消费升级。
随着业务的快速发展,我们日常遇到的系统性能压力问题也逐渐出现,甚至经常会因一些突发的营销活动,导致系统性能指标突然暴涨,可能导致我们系统的瘫痪。最近几年,随着系统架构的不断升级,以及电商业务的多样化和各种促销活动,传统性能测试已不能满足现有系统架构的需要。
所以,全链路压测变得越来越基础 ,也越发重要。经历了两年多的全链路压测实践与总结沉淀,通过录制流量回放,模拟大促真实流量,串联线上全部系统,让核心系统流程成倍比的同步放大用户真实流量,海拍客压测平台和全链路压测体系已经能够承担起公司整个后台服务稳定性的重任。
购物车中台发展总结
本篇主要讲述下海拍客购物车中台发展及现状。