云计算定义了不同的服务层级 IaaS、PaaS、BaaS、SaaS。当企业从原来... 展开 >
黄闻欣,腾讯专家工程师,《Android 移动性能实战》主要作者之一。2009 年加入腾讯,先后负责腾讯微博、MAC QQ、IPad QQ 的测试及终端测试工具研发工作,一直致力于移动应用测试,提升产品质量和研发效率,目前加入手 Q 项目,负责双终端平台的专项测试工作,带领团队开发稳定性测试产品 NewMonkey,性能监控平台 SNGAPM,积累了丰富的 Android/iOS 应用专项测试和性能调优经验。
个人是轻微偏执狂,锤子粉,两个娃的爸,一直认真执着的老鲜肉。
云计算定义了不同的服务层级 IaaS、PaaS、BaaS、SaaS。当企业从原来的技术架构中切换或建设不同的云计算服务时,都会对工程效率产生影响。如办公、研发场景的各种 SaaS 服务不仅仅打破信息的壁垒,加入更多联动的自动化应用,还可以通过协作进一步提升工程效率;如虚拟机、虚拟网络、容器管理等服务,让原本很多 DevOps 高难度动作变成可能,但对于开发调试测试却造成了挑战,企业原本的流程与系统如何更高效对接,也形成了新的挑战。因此可以说对工程效率产生影响,这些影响有正面的也有负面。本次分享,我们希望聚焦在工程效率于不同的云计算服务层级的实践,包含遇到的困难,如何解决问题,如何适配新的架构,利用云的优势,有什么好的实践,进而让企业对接与建设云计算时能更加高效,更具成效。
本演讲将在 DevOps 方法理念的基础上,阐述 DevOps 转型的管理与工程实战,涵盖了组织结构、实施框架、七步转型法、持续交付、微服务架构、安全管理等,通过经典的案例,血淋淋的教训,来剖析团队如何应对 DevOps 转型过程中必须跨越的问题,为团队应用 DevOps 定制合理的路线图,让企业享受到 DevOps 带来的实实在在的工程效率提升。
从单体支付工具到超级 App,从几个人到几百人的开发团队规模,不管是在协同开发上,还是在超级 App 的稳定性和高质量交付上,我们都会面临非常大的并发挑战。
本专题将围绕支付宝 App 在亿级并发场景下,研发协作管理如何有条不紊的运作;同时,为了进一步提升和保障超级 App 的交付质量,支付宝又如何通过深度的 DevOps 定制,保证超级 App 的高质量交付,包括代码静态扫描分析,敏感代码管控,静态依赖分析,构建工具链深度定制等技术。
由于东南亚基础设施不够完善,很长一段时间内 Shopee 的系统都没有一个统一的标准,开发运维中间件等缺乏自动化手段,工程效率不尽人意。随着公司快速发展,迫切的需要一个标准化的平台来统一这些组件,减少重复工作,提高效率。于是我们开发了新的底层平台,标准化了底层资源,由统一的调度编排系统 Eru 驱动。在这个平台上面,通过混编 Container 和 VirtualMachine 以及对 NUMA 架构的支持,我们构建了多种多样的服务,比如缓存服务 Cache Cloud, 还有 RDS/Config Cloud/MQ Cloud/Kubernetes Cloud 等。同时我们开发者的虚拟机和离线计算任务也能跑在一个平台上,工程运行效率和研发效率大规模的得到了提高。
重点阐述在腾讯云上如何运用 Service Mesh 来对后台环境进行管理,提升在研发过程中的效率 -- 随着腾讯自研业务逐步迁移上云后,在腾讯云上如何利用云原生的解决方案 Istio+K8S 来对自研业务后台进行环境管理,过程中涉及到了如何来适配 RPC 私有协议、名字服务等技术细节。以及这套环境治理方案实际对业务在研发过程效率的提升效果。
1.研发过程中因为后台环境没有治理而导致效率低下的痛点。
2.过去我们在 IDC 时代如何来做环境治理,引出一些常用环境治理的常用思路和方案。
3.随着云时代的到来,在云上如何来做环境治理?原本照搬过去的解决方案不合适。
4.如何利用云原生方案来解决环境治理?Service Mesh 方案的提出,利用 Istio+K8S。
5.Istio 如何来对自研业务进行环境管理的具体技术实现,以及现有能力的展示。
6.在实际业务的收益。(开发阶段、功能测试阶段、自动化测试阶段的收益、增值能力-比如调用链等)
7.未来还会如何完善方案。
稳定压倒一切,如何在阿里巴巴的钱袋子做高频线上实验?A/B Testing 是算法模型进行在线实验的经典方法。Google 于 2010 年发表了分层正交实验论文,各大公司依此思想建立了分层实验平台,可以对流量多层正交,互不影响,从而大幅提升实验效率。 随着大规模机器学习技术的发展,高度复杂的深度模型被广泛使用,在线实验参数的变更,在后台会涉及复杂分布式系统数据切换,在线服务上线等一系列操作,会面临相当多问题,严重影响迭代效率。 阿里妈妈作为国内领先的商业广告提供商,高度依赖在线实验。在投放系统的各个阶段,如检索召回、排序、竞价,涉及系统上下游多个模块,同时迭代模型版本近百个,每日实验发布近百次。而在线学习等新技术使用,使模型变更更加高频化。错误实验会对系统造成急性或慢性损害,如分布式系统宕机,营收缓慢下跌,从而引发严重金融故障。 为了在金融系统做好在线实验,平衡效率与安全,我们研发了在线实验平台 WhaleShark,运用多种技术为业务提供帮助。目前已承载阿里妈妈所有场景广告,覆盖搜索直通车、超级推荐、品牌等多个业务场景,赋能用户进行模型、数据、配置、应用等多维高频变更。
1. 阿里妈妈业务与架构;
2. 在线实验平台的挑战、产品与架构 ;
3. 新一代分层实验机制,包括独立分区,联合实验,混竞路由 ;
4. 容器化隔离,动态路由,环境自动构建;
5. 模型特征交付与自动验证;
6. 监控与自动容灾;
7. 全链路数仓。
1. 如何利用在线实验提升算法系统迭代效率;
2. 新一代分层实验机制,如何流量复用大幅支持搜索广告场景;
3. 如何利用容器化隔离、动态路由、环境一键构建、灰度发布、模型交付等技术提升效率与稳定性;
4. 深度模型与特征的自动质量方案;
5. 如何进行实验级实时监控与容灾;
6. 如何信息化建设,关联利用算法各阶段数据,赋能业务演进。
随着市场和业务的快速变化和云计算的成熟,持续集成和持续部署(CI / CD)作为重要实践来提升研发工程效率。但如果自动化流程中无法验证业务变更风险,那么这种频率和速度提升可能会变成一种灾难。敏捷的推行对测试是极大的挑战,更碎片化更短时间的测试验证活动,导致质量难以控制、更高的缺陷打回率和事故率,甚至影响企业对外服务能力。如何确认客户的有效需求得以实现,确保整个生产的过程安全的、及时的发布最终产品呢?这里给大家提供一种工程实践思路,利用云计算能力实现测试服务化、环境服务化、通过持续验证减少集成失败率,让测试不成为瓶颈,以加快软件交付的速度和可靠性。
灰度发布是为人熟知的概念,但认知并不一致。我们的感受是:抛开学术定义的纠结,实施前至少要对聚焦点达成共识。于我们而言,聚焦的是业务请求及相关数据流的明确控制。在这个前提下指导实施中具体问题的解决。
当前无状态应用的灰度发布谈的较多。但工程实施中,很多典型的衍生问题未被充分讨论,如:跨版本事务一致性、中间件的协同等。我们会结合案例给出策略和方案。
灰度发布需放到持续交付流水线的实施和演进中看,要提升工程效率,一个能高效运转的工具链是基础,而一个复杂系统中服务众多,依赖复杂,如果希望发版频率独立,又支持影响受控的灰度发布,还需要有管理和方法论指导工程实施。我们会讨论灰度发布如何整合进流水线,以及如何兼顾交付效率和影响可控。