NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

移动开发面临持续交付挑战

  • 2014-07-23
  • 本文字数:1057 字

    阅读完需:约 3 分钟

Jesper Richter-Reichhelm 作为 Wooga 公司的工程主管,他在 2014 年的阿姆斯特丹 GOTO 大会上发表了演讲,主题为开发移动游戏过程中团队所面临持续交付挑战。Jesper 尤其强调了缺乏对移动相关软件交付过程的控制如何差点摧毁他们的公司。

Jesper 借用一款移动游戏去年年底在 App Store 发布的案例阐述了他的观点。此次发布到被 App Store 接受花费了 4 天时间,但是却包含了一个严重的 bug,致使 15% 的用户受到影响。虽然他们只花费了几个小时就将 bug 修复并且向 App Store 提交了新版本,最终用户却是在 5 天之后才获取到新版本,因为这几天正好是美国的感恩节。数以万计的差评,受影响用户接近 200000,使得该游戏差点遭遇灭顶之灾,整个公司都差点垮掉,Jesper 如是说道。

在 web 开发中有越来越多的做法支持持续交付策略,比如 canary(金丝雀)部署方式(为了控制新特性的发布)或特性开关,但是App Store 发布过程并不支持这些方式。为了绕开这些限制,Wooga 公司投入了相当精力支持对其游戏进行在线配置,而且通过一些技巧如“伪造的”设备要求(如是否配备相机)来划分他们的用户,以达到对部分功能进行canary(金丝雀)部署的目的。虽然如此,公司还是依赖用户去主动安装应用的更新,超过10% 的用户还在使用18 个月之前的老版本。如果你要他们强制升级到一个只能在线玩的版本,他们就关掉网络。

此外,在发布应用到App Store 环节,Wooga 公司停止了从专用机器手动发布版本的做法(但是Jesper 建议将dSYM 文件进行版本管理,目的是调试崩溃问题),因为这种做法构成了单点失败,在需要向App Store 发布新版本时,这种单点失败增加了修复bug 的时间。Wooga 还建立了自己的内部应用商店,用来模拟App Store 的发布流程,同时允许内部用户测试游戏的新版本(与Facebook 的做法如出一辙)。

除了交付机制和 MTTR (Mean-Time-To-Repair,修复平均时间),Jesper 还强调对于网络和设备的控制缺失是 Wooga 在移动开发中面临的主要挑战。

尤其是移动网络延迟波动和离线使用容易导致数据丢失,后果就是我们很难保持数据的一致性和 / 或调试用户碰到的问题。为减小问题的影响,Wooga 采用的手段有,与手机客户端异步通信,同等对待所有消息(即使是几天前的)以及引入 ETags 来解决更新冲突。

查看英文原文: Continuous Delivery Challenges in Mobile Development


感谢曹知渊对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-07-23 21:391342
用户头像

发布了 28 篇内容, 共 95465 次阅读, 收获喜欢 0 次。

关注

评论

发布
暂无评论
发现更多内容

测试过程管理揭秘:敏捷站会、项目时间、推动关键技巧

测吧(北京)科技有限公司

测试

九章云极DataCanvas公司荣登“2023Venture50投资界数字科技”榜

九章云极DataCanvas

语音合成技术在智能驾驶中的创新与应用

来自四九城儿

SRP (Secure Remote Password Protocol)

Geek_44385e

srp

ChatGPT 被曝泄露私密对话;美国 AI 企业一天蒸发 1.3 万亿市值丨 RTE 开发者日报 Vol.139

声网

项目排期揭秘:预估测试时间与灵活沟通工期不合理

测吧(北京)科技有限公司

测试

任务与责任划分:巧妙安排项目工作与任务

测吧(北京)科技有限公司

测试

跨团队协作智慧:资源寻找、支持申请、协作分工

测吧(北京)科技有限公司

测试

唯品会商品详情数据接口Python

tbapi

唯品会API接口 唯品会商品数据接口 唯品会商品详情数据接口

需求管理智慧:与产品经理巧妙沟通解决不规范与变更频繁

测吧(北京)科技有限公司

测试

质量标准深度解读:覆盖度、bug等级、用户体验窥探

测吧(北京)科技有限公司

测试

外包管理战略:解锁高效团队协作的关键

测吧(北京)科技有限公司

测试

空降领导的智慧:与老员工相处与快速团队信任的建立

测吧(北京)科技有限公司

测试

低代码开发平台在企业数字化转型中的应用研究

快乐非自愿限量之名

软件开发 低代码 数字化 企业转型

软件测试/测试开发/全日制|Pytest allure如何添加测试用例步骤

霍格沃兹测试开发学社

布局算力新基建,九章云极DataCanvas公司赋能AI产业高质量发展

九章云极DataCanvas

九章云极DataCanvas公司入选《2023中国大模型产业创新服务商TOP30榜单》

九章云极DataCanvas

2024最新一期中国数据库流行榜公布:阿里云PolarDB登顶

阿里云瑶池数据库

数据库 云计算 阿里云 云原生 polarDB

如何精准推动外包团队的工作

测吧(北京)科技有限公司

测试

软件测试/测试开发/全日制|MySQL安装最全教程

霍格沃兹测试开发学社

建立团队信任与凝聚力的六大实用方法

测吧(北京)科技有限公司

测试

语音合成技术在智能驾驶中的应用与展望

来自四九城儿

初次承担管理的成功领导力建立

测吧(北京)科技有限公司

测试

云原生与低代码:加速提效,为行业拓荒期构建生态

不在线第一只蜗牛

云计算 云原生 低代码

物联网浏览器(IoTBrowser)-Modbus协议集成和测试

快乐非自愿限量之名

浏览器 物联网 项目开发

Kickoff会议与测试关注点:项目启动的黄金法则

测吧(北京)科技有限公司

测试

语音合成技术在智能驾驶中的应用与挑战

来自四九城儿

深度解析:i++ 与 ++i,探究其性能差异与使用技巧

高端章鱼哥

i++ i

从需求到测试计划:项目流程与规范关键输入输出

测吧(北京)科技有限公司

测试

测试流程与规范指南:详解测试计划、用例与质量指标

测吧(北京)科技有限公司

测试

提高项目执行力:解析执行力差原因与提升方法

测吧(北京)科技有限公司

测试

移动开发面临持续交付挑战_Apple_Manuel Pais_InfoQ精选文章