简介:金融级移动开发平台mPaaS(MobilePaaS)提供从云到端的App开发、测试、运维一站式解决方案,能够有效地降低技术门槛,降低研发成本,提升开发效率,助力企业快速构建稳定优质的移动应用。在我们日常的运维过程中,我们发现大部分用户更感兴趣的是Ant的研发过程,尤其是当上百个开发者同时在一个app环境下高效开发时,技术选型、研发过程以及线上运维如何是否成为了大家关注的焦点。下面分享一下我的一些理解。一、背景金融级移动开发平台mPaaS(MobilePaaS)为App开发、测试、运维提供从云到端的一站式解决方案,可有效降低技术壁垒,降低研发成本,提高开发效率,协助企业快速构建稳定优质的移动应用。在我们日常的运维过程中,我们发现大部分用户更感兴趣的是Ant的研发过程,尤其是当上百个开发者同时在一个app环境下高效开发时,技术选型、研发过程以及线上运维如何是否成为了大家关注的焦点。下面分享一下我的一些理解。2.技术选择目前的研发模式分为两种:Native模式和动态模式。Native技术栈主要覆盖基础中间件,有核心的高安全链接或一些变化不大的基础页面,如收银台、登录页面、支付码等。其他场景业务,客户端版本发布时间为通常以动态方式解耦。其中线上H5一般适用于事件营销活动,线下套餐场景一般用于有固定入口的入驻商家。如果存在跨设备多消费场景,一般会选择小程序,通过小程序的跨设备发布实现多设备投放。三个研发过程1.需求阶段:主要是需求评审,大家都同意。2.开发阶段:代码开发、代码合并打包等3.测试阶段:测试用例编写、功能测试、兼容性测试等4.集成阶段:代码修改应用到对应的集成基线中,并进行集成验证5.发布阶段:通过内灰、外灰、全渠道打包、全站内发布。分支管理四大原则:基于分支开发,基于主干发布1.变更运行流程创建变更选择仓库,基于master创建分支并在分支上创建项目包,打开安装包,自建test(可以在change分支的基础上创建feature分支,并行开发)并合并到Master中进行打包,测试应用集成,发布独立发布主要用于不同于日常变更的独立发布迭代,比如作为针对厂商预装包的适配迭代,适合独立发布。多应用管理(双主)使用场景:聚宝、香港支付宝、口碑、支付宝共用一个代码仓库。同一个代码库需要多个app并行,需要有自己独立的master分支。执行多中继合并。五线运维1.多维灰度发布能力MDS提供多维发布模式。发布前需要经过白名单灰度、内部灰度、外部灰度、百分比灰度等多级灰度,不断扩大灰度。待Crash率、ANR率等稳定性指标达标后,才会进行全面发布。2.多角度在线监控MAS提供多角度的实时指标监控,包括Crash率、ANR率等核心指标。同时,这些核心指标通过实时渠道上报,便于快速发现问题。3、舆情监测除以上部分核心指标监测外,同时提供舆情监测平台。开发者可以设置自己关心的关键词,灰度期间查看相关产品的在线用户舆情,对用户问题进行真实反馈。4、在线问题定位通过上述多种渠道发现问题后,首先可以通过客户端上报的行为日志进行分析,同时可以使用MAS提供的日志拉取功能拉取用户的详细日志以供进一步诊断和分析。5、自动容灾和降级积累了多年处理客户端问题的经验,客户端SDK内部也沉淀了一套自恢复容灾和降级策略。例如,对于多次启动后反复崩溃的用户,客户端会在启动后尝试清除应用私有目录下的一些文件,以解决脏数据导致的极度反复崩溃。6.在线问题修复提供不同的能力来实现针对不同问题的动态修复,例如Native模块动态修复的hotpatch机制。原文链接本文为阿里云原创内容,未经许可不得转载。
