登录
注册
个人信息
我的订单
我的报告豆
我的优惠券
我的笔记
我的阅读
我的收藏
我的下载
我的上传
我的订阅
在线客服
退出登录
回到首页
AI
搜索
发现报告
发现数据
发现专题
专题报告
专题百科
研选报告
定制报告
VIP
权益
发现大使
发现一下
行业研究
公司研究
宏观策略
财报
招股书
会议纪要
seedance2.0
低空经济
DeepSeek
AIGC
大模型
当前位置:首页
/
行业研究
/
报告详情
彭飞 - App工厂架构设计及在58集团应用
电子设备
2022-11-02
ArchSummit北京2022|全球架构师峰会
Cc
App工厂架构设计及在58集团应用
App架构变迁
单团队单App架构
:主要矛盾是研发效率和需求完成度,通过组件架构实现业务复用,采用Hybrid、React Native、Flutter等跨平台技术提升研发效率。
多团队单App架构
:主要矛盾是部门协同研发效率,采用基于工程组件的架构实现代码隔离、复用和编译速度提升。
多团队多App架构
:主要矛盾是公共垂直业务多App复用和App快速生成,通过App工厂架构实现代码复用、体验统一和流量共享,支持Native和跨平台代码,以及公共垂直业务的近0成本复用。
App工厂架构设计
研发背景与目标
:App工厂旨在支持标准化能力的产出、子App的生成迭代和支持垂直业务平移,通过一套代码多App复用降低成本、提升效率。
58App架构现状与问题
:核心问题是工程代码耦合导致业务平移时携带过多无关代码,增加迭代成本和无法控制包大小。
解决方案
:通过工程级别解耦,按需配置业务平移时依赖的代码。
App工厂架构设计原则
:
上层可以依赖下层,下层不可以依赖上层。
可以隔层依赖。
业务pod间不能产生依赖。
中间件pod和基础库pod可以在同一层级单向依赖。
支持垂直业务平移和创新App生成
:
组件解耦需把握好度,避免架构耦合、职能耦合和引用耦合。
通过工程上全面重塑、组件粒度把控和改动风险最小化实现解耦。
具体措施包括组件分层、接口隔离、依赖分析工具、防劣化工具和包大小治理工具。
App工厂中台能力
:通过一套代码多App复用、App工厂架构准则、依赖分析、防污染劣化、符合准则的组件、包大小、标准中间件、业务中间件、自动化质量工具和垂直业务等能力,实现业务驱动架构,多App场景下降本提效。
业务应用
首个实施项目
:房产业务在同城App、安居客App实现一套代码复用,通过App工厂实现双App无缝平移,降低业务迭代成本,控制平移后包大小。
实施方案
:采用基于底层统一的多业务长期方案,支持创新app和垂直业务,一劳永逸。
组件改造案例
:
Hybrid中间件:谨慎设计、反复沟通,以业务代码改动与影响最小为目标,考虑业务的双向平移。
跳转中心组件:针对垂直业务统一跳转协议与跳转中心,针对非垂直业务保留各自逻辑。
公共数据统一问题
:通过统一参数集合,针对垂直业务参数获取接口隔离,迁入App独立实现。
App间公共交叉业务兼容问题
:定义通用数据接口,个性化业务通过通用数据接口获取垂直业务产生的数据,接口实现类各独立业务分别实现,配置中心动态决定业务调用的接口实现类。
收益
:
支持房产垂直业务平移+研发提效。
支持下沉市场业务平移+研发提效。
支持创新app研发提效。
包大小收益:租房依赖的中间件和基础库大小减去安居客接入App工厂的中间件和基础库大小,计算得出36.8%和26%的包大小缩减。
一些思考和规划
测试成本问题
:研发成本降低后,测试成本成为主要问题,需要通过接口隔离、松散耦合规避单一定制业务需求带来的中间件升级,降低非关联业务测试成本。
其它思考
:
进一步降低测试成本:能否做到一定比例底层代码升级不用上层业务测试?
进一步提升组件复用效率:与业务协同,将事业部下的业务拆分的更细、可复用。
进一步提升性能治理能力:以工程组件为维度,在启动时间、页面加载速度、崩溃、卡顿等性能上进行精细化治理。
核心观点
:关键还是以业务为导向,服务好业务的发展。
你可能感兴趣
优酷App业务架构设计与全链路应用实践
商贸零售
阿里巴巴
2023-02-21
金融级单元化架构设计及应用
商贸零售
北京金融科技产业联盟
2025-05-01
XX集团智能工厂信息化顶层架构设计方案
商贸零售
IBM
2024-09-05
字节DevMind 平台架构设计和技术应用-姜磊
商贸零售
ArchSummit北京2022|全球架构师峰会
2022-11-02
中国移动(王小玉):新一代云原生数据库分析型数据库架构设计和应用创新
商贸零售
-
2024-08-26