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

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)关注我们,并与我们的编辑和其他读者朋友交流。

python023基于Python旅游景点推荐系统带vue前后端分离毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
JSP基于SSM网上医院预约挂号系统毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值