【贝壳商业化算法中台架构演进的最佳实践】
贝壳找房作为一个知名的房产服务平台,其商业化进程伴随着算法中台架构的不断演进。在这个过程中,贝壳找房经历了从最初的合约广告产品开发,到效果广告系统的探索,再到各类商业化产品的推出,如CPA、CPM、CPT和CPS模式。随着业务的快速发展,原有的架构逐渐暴露出问题,如稳定性差、性能低、监控薄弱以及业务接入费时等,这些问题推动了贝壳找房对商业化策略算法中台的重构。
2018年,贝壳找房的架构主要是商业化产品购买平台与流量分发平台的结合,但随着时间推移,到了2019年,虽然产品和业务形态持续发展,但超时严重、代码耦合的问题开始显现,新的业务接入变得耗时且复杂。2020年初,这些问题进一步恶化,导致数据冗余和恶性循环,这对商业化的稳定性和效率造成了严重影响。
为了解决这些问题,贝壳找房决定进行系统重构,构建商业化策略算法中台。这一中台的主要目标是提高性能、增强稳定性、强化监控并简化业务接入流程。在重构过程中,贝壳找房采取了一系列关键措施:
1. **性能优化**:由于Python的全局解释器锁(GIL)限制了多线程性能,贝壳找房选择了Java替代Python,以提升系统处理能力。
2. **职责拆分**:通过代码解耦,将服务进行统一化,每个服务都有明确的单一职责,并指定责任人,降低了维护成本。
3. **运行监控**:加强服务过程的监控,包括模型更新机制的监控,确保系统的稳定运行。
4. **服务治理**:引入服务治理框架,以保证服务的稳定性和可扩展性,提升整个系统的健壮性。
5. **数据分层**:采用离线数据分层,将业务逻辑与公共逻辑进行拆分和重构,有效解决了数据孤岛问题。
在架构上,贝壳找房的商业化策略算法中台分为三个层次:
- **在线服务层**:提供实时、高效、稳定的HTTP接口,支持AB测试,满足不同业务场景的需求。
- **近实时层**:用于模型训练、数据存储和订阅用户行为数据,实现秒级用户兴趣捕捉和线上效果反馈。
- **离线计算层**:对原始业务数据和日志数据进行ETL(提取、转换、加载),构建用户画像、经纪人画像、房源信息等关键数据。
通过这样的架构设计,贝壳找房的商业化策略算法中台能够更好地支持各类商业化产品,提升整体收入,同时提高经纪人的参与率和转化率。未来,贝壳找房将继续在架构优化和技术创新方面进行探索,以适应快速变化的市场环境和用户需求。