目前,数字化浪潮正席卷千行百业,人们最直接的感受就是一个字:快。
业务响应要快、需求分析要快、研发交付要快、运维定位要快、运营分析要快。不仅于此,商业环境、竞争态势、产业政策等也都在快速变化,用户的要求也越来越高,数字化时代的用户满意度逐渐由“响应快”、“服务好”、“体验爽”三部分构成。
快和好,这两者如何平衡?
数字化离不开业务和技术的螺旋迭代上升,业务驱动技术,技术需要提前Ready,技术解决业务问题,这是个螺旋上升的过程。我们相信技术会帮助我们解决“数字化时代下,快和好的兼顾”。
其实技术已经做好了全方位的Ready,从下图我们可以看到,IT行业从方法论、技术、架构、基础设施等各方面进行一次深入的演进变化,而每个方向又都是互相支撑,缺一不可,合起来为了实现“快”。
从最早的瀑布演进到敏捷,继而演进到DevOps。DevOps的初衷是为了打破跟在开发团队(部门)和运维团队(部门)间的那堵“混乱之墙”,加快产品的上线,更快的获取用户反馈,更快的迭代改进和响应需求。
应用架构:从单体应用,巨大无比,安装部署启动时间长,一路演进到微服务。微服务的初衷是为了降低依赖,每个独立的微服务能独立发布上线,从架构层面实现DevOps的理念。
部署:从物理服务器,到虚拟机,直到容器,以及基于容器的分布式集群管理(以Kubernetes为代表)。容器天生更易于装载微服务,随着整个开源生态的繁荣,容器和容器的集群管理越来越标准,提供了从监控、安全防护、注册、发现,负载均衡、故障自我发现和修复,滚动升级和扩容、自动化部署等丰富的功能,更进一步的加快产品的交付效率。
应用的基础设施:从自建的数据中心,到托管,到现在普遍共识的“把专业的事情交给专业的人”,尽可能使用云厂商的云服务,这样每个企业把自己的人力更多的投入到自身业务的交付上,因为比较每个企业都是最懂自己的业务,毕竟现在IT基础设施越来越复杂,已不是所有企业都有足够的人力和能力来建设的。
提升研发效率十倍背后
IPD成功地让华为的硬件产品实现了商业和市场的成功,对于云服务这类新的商业模式、DevOps的研发模式,IPD流程体系是否还适合呢?
华为非常能理解对于非互联网企业转型所面临的痛苦和挑战。通过走访客户华为云发现,客户反馈通过使用华为云原生的一系列产品,帮助他们提升了研发效率10倍+。很多企业到华为来访也都希望华为能分享一下自身的经验,尤其是云原生究竟发挥了哪些作用,以及如何更好的使用和拥抱云原生的方法和技术。
需求的排序和价值选择:从敏捷到DevOps,就一直在提倡“Focus on Value”,聚焦价值,交付价值,任何企业的研发资源都不是无限的,在产品没有上市形成收入时,对很多企业而言,研发都是成本消耗,对于海量的业务需求,必须要让研发团队做最有价值的需求。
Build-In Quality(内嵌质量保证):质量保证的活动对于很多研发团队而言确实是增加成本和时间的,传统思维里面,总是认为开发后再进行质量保证活动(如测试验证),这样当然会慢一些,随着容器、云基础设施、基础设施即代码,CICD等多个技术的成熟,Build-In Quality成为非常关键的平衡“质量”和“效率”的手段,在CICD中内嵌代码检查扫描,多种自动化测试,灰度部署验证,最好的情况下实现了从代码提交到生产上线的全流程流水线执行,不仅仅过程中保证质量,也可以释放研发人力用于其他需求的开发,显著提升了质量。
应用/微服务的托管和治理:不仅仅是微服务需要治理,对于单体应用,也是需要高效的治理,只是由于微服务的数量增加后,治理的诉求更加迫切。微服务的注册、发现,运行后的负载均衡,自动容错,降级,限流,否则微服务拆分了因为无法有效的管理而更加低效了。
容器和容器集群管理:现代的软件开发,对于开发人员而言,部署其实是个越来越复杂的环节,尤其面向不同环境的多种形态部署,容器和容器集群(Kubernetes)越来越成熟,“Build once,Run anywhere”已经在很多企业实现,容器和容器集群管理已经在很多企业的生产环境得到广泛应用。
运维监控和日志:对于还在DevOps转型的企业,尤其是研发部门和运维部门是分离的组织结构,影响转型和研发效率的往往是研发不懂运维,运维不懂研发,而一个好的运维监控和日志的平台,能够帮助研发和运维弥合这个Gap,加速研发到运维的信息和产品交付的流转,进而提升效率。
研发效率提升多少倍只是一个牵引的方向,通过新的技术的加持,新的方法论、理念和实践的引入,组织和产品架构的不断优化,把价值更好更快的交付,让企业活下去、活得更好才是企业追求的永恒目标。
云原生的技术和理念都是开源、开放的,但是由于整个体系比较庞杂,开源社区也在快速的迭代更新,把所有的云原生开源技术在企业内部用起来,对很多企业是一个巨大的挑战。华为云作为国内主流的云厂商,也提供了DevCloud、ServiceStage/CSE、CCE/CCI、AOM/APM/LTS、云原生中间件等多个云原生产品。未来,随着技术的不断演进,这个数字化的世界也将会变得越来越高效、安全、美好。