辽阳做网站,wordpress 模板选择器,徐州市鼓楼区建设局网站,莱芜网络公司案例简介#xff1a; mPaas 研发流程和线上运维介绍 1. 背景
金融级移动开发平台 mPaaS[1]#xff08;Mobile PaaS#xff09;为 App 开发、测试、运营及运维提供云到端的一站式解决方案#xff0c;能有效降低技术门槛、减少研发成本、提升开发效率#xff0c;协助企业快速搭…简介 mPaas 研发流程和线上运维介绍 1. 背景
金融级移动开发平台 mPaaS[1]Mobile PaaS为 App 开发、测试、运营及运维提供云到端的一站式解决方案能有效降低技术门槛、减少研发成本、提升开发效率协助企业快速搭建稳定高质量的移动应用。在我们日常运维过程中发现大部分用户对蚂蚁的研发流程比较感兴趣特别是在上百个开发者同时在一个app的环境内进行高效开发技术选型、研发流程还有线上运维是怎么做的成为大家关注的重点。以下分享我的一些理解。
2. 技术选型
目前研发模式分为Native模式和动态化模式两种其中Native技术栈主要覆盖基础中间件还有核心高保链路或者变更很少的一些基础页面比如收银台登录页面付款码等。其他场景业务一般会通过动态化的方式解耦客户端版本发布。其中在线H5一般适用于活动营销活动离线包场景一般用于有固定入口的常驻业务如果有跨端多投场景一般会选择小程序通过小程序的跨端发布实现多端投放。 3. 研发流程 1.需求阶段主要是需求评审大家意见达成一致。 2.开发阶段代码开发代码合并以及打包等 3.测试阶段测试案例的编写功能测试兼容性测试等 4.集成阶段代码改动申请进对应的集成基线,进行集成验证 5.发布阶段: 通过内灰外灰渠道包全量站内全量实现发布上线
4. 分支管理
原则基于分支开发基于主干发布 1. 变更操作流程
1) 创建变更 2) 选择仓库基于 Master 创建分支 3) 在分支上打工程包打安装包自测可以基于变更分支创建 feature 分支并行开发 4) 合并到 Master 打包、提测 5) 申请集成、发布
2. 独立发布
主要用做区别于日常变更的独立发布迭代比如单独针对某个厂商做的预装包适配迭代就适用于独立发布。
3. 多App管理(双Master)
使用场景聚宝、香港支付宝、口碑、支付宝共用同一个代码仓库同一代码库需要多app并行需要有自己独立的master分支在合并的时候在不同的app端进行多主干的合并。
5. 线上运维
1. 多维度灰度发布能力
MDS提供多维度的发布模式发布前需要经过白名单灰度内部灰度外部灰度百分比灰度等多层次灰度不断扩大灰度范围直到Crash率ANR率等稳定性指标达标后才进行全量的发布。
2. 多角度线上监控
MAS提供了多角度的实时监控指标监控包括Crash率ANR率等核心指标同时这些核心的指标上报都是通过实时通道完成的上报方便问题的快速发现。
3. 舆情监控
除了以上一些核心指标的监控同时提供了舆情的监控平台开发者可以设置自己关注的关键字在灰度期间去查看相关产品的线上用户舆情真实的反馈用户问题。
4. 线上问题定位
通过上述的多渠道发现问题后首先可以通过客户端上报的行为日志进行分析同时也可以通过MAS提供的日志拉取功能拉取用户的详细日志进行进一步的诊断分析。
5. 自动容灾降级
在积累了多年的客户端问题处理经验后客户端SDK内部也沉淀了一套自恢复的容灾降级策略。比如对于多次启动后重复闪退的用户客户端会尝试在启动后清除app私有目录下的一些文件解决由于脏数据导致的极端重复闪退。
6. 线上问题修复
针对不同的问题提供了不同的能力实现动态修复比如对Native模块实现动态修复的hotpatch机制。
作者荣阳
原文链接
本文为阿里云原创内容未经允许不得转载