|Serverless 对研发效能的变革和创新( 四 )
本文插图
敏捷的应用角度流程
下图展示了应用交付的流程 , 代码通过统一管理的代码库存储和管理起来 , 再通过持续集成将其变成一个交付物 , 再将其存储到交付物仓库里面 。 交付物可以是容器镜像 , 也可以是代码包的模式 。 产出了交付物之后 , 可以自动地将其部署到测试、生产环境中去做版本部署 , 最后实现到生产环境的自动部署 。 因此这样应用交付流程的关键点在于实现高度自动化 , 而自动化的关键环节有两点:分别是基础设施即代码和环节间的自动化串联 。
本文插图
自动化应用交付流水线
下图展现的是自动化应用交付流水线 , 可以看到在下面的每一个环节都需要实现很多的功能 , 而很多都是重复性工作 , 因此需要做到基础设施即代码 。
本文插图
基础设施即代码
下图是基础设施即代码的展示 。 Serverless 应用模型通过声明来定义应用资源 , 能够实现标准化、自动化和可视化 。
本文插图
可以为模板传入不同参数 , 可以动态生成应用运行环境 。
本文插图
服务版本和灰度发布
在函数计算里面 , 应用有版本的概念 , 版本是一个不可变实体 , 因此杜绝了版本因为非预期的修改造成线上应用受损 , 阿里云通过服务版本和灰度发布避免了这样的问题 , 客户端访问应用通过别名来访问 。
本文插图
Serverless 工作流
阿里云提供了 Serverless 工作流方便用户将 DevOps 串联起来 , 用户可以通过配套的服务能力、工具能力快速地创建工作流 , 并且以可视化的方式展现出来 , 能够清楚地看到工作流的效果 。
本文插图
自动化应用交付流水线
回顾一下当有了这些能力之后 , 如何实现自动化应用交付流水线 。 在源码阶段 , 可以实现代码质量静态检查 , 保证 CheckIn 的代码质量 。 当 CheckIn 到代码库之后 , 会自动运行单元测试 , 并且产出交付物 。 在测试的环节 , 通过与阿里云 ROS 的无缝集成能够实现自动化部署到测试环境 , 并且运行测试用例 。 这些完成之后 , 通过 ReleaseManager 可以确认部署 , 通过工作流将这些任务串联起来 , 发布到预发布环境中 , 并且进一步部署到生产环境中 , 每一个步骤都实现了自动化 , 研发效能得到了极大提升 。
本文插图
日志收集和查询
在 Serverless 计算平台之上 , 原生提供了很多的日志收集和 Metric 收集能力 , 比如简单日志查询以及高级日志查询 , 能够通过日志方式为用户提供高级数据分析能力 。
本文插图
指标收集和可视化能力
Serverless 计算平台除了提供了基本的指标视图之外 , 还支持自定义指标视图 , 用户可以通过自定义的关键词指标搜索实现与业务相关的数据分析 。
本文插图
当 Serverless 和 DevOps 结合之后 , 能够大大提升研发效能 , 一方面大大降低了开发团队的心智负担;另外一方面 , 通过工具使得整个 DevOps 流水线能够实现高度自动化 。
推荐阅读
- 数据|首届数字共青发展高峰论坛顺利召开,海云数据智能智造研发基地同期揭牌
- AI人工智能|川渝首次联手研发7个科技创新项目
- 潘学宝|vivo参与研发,三星推出最新款具备5G、AI能力移动处理芯片,重视中国市场调研
- 量子|中国电信、国盾量子合资项目:量子城域网、量子通话手机研发中
- 中年|【厅属动态】 广东省测绘院研发水准测量在线软件平台,提升水准测量观测的工艺水平
- 大牛证券|特斯拉正在研发一项对世界非常重要的产品!知道是什么吗?
- 行业互联网|池州经开区:安芯电子公司研发平台荣获多项专利
- 行业互联网|深企自主研发空气悬浮搬运技术亮相高交会
- LH手机科技|离开魅族后放飞自我,李楠言论目光太短浅,不相信华为研发费用
- 数领科技|做好研发才是降低成本的捷径!