微服务笔记29:实现DevOps

DevOps

实现一般采用Jekins或者GitLab开源实现方案
一种新型的业务研发流程。在该流程中业务开发人员不仅需要负责业务代码的研发,还需要负责业务的测试以及上线发布等全生命周期.


DevOps

高效的组织团队之间通过自定义的工具协作和沟通来完成软件的生命周期管理,从而更快,更频繁的交付稳定的软件。
高效的工具能自动的发送到线上,就需要经过CI和CD。

  • CI :持续集成,开发完成代码开发,自动的进行代码检查,单元测试,部署测试环境,进行集成测试,跑自动化测试用例。
  • CD: 持续部署。
    1. 能自动部署到生产环境中进行集成测试;测试完成在进行小批量的灰度测试;然后在发布线上。
    2. 在整个发布的过程中,需要有人为的判断整个过程是否正常,确保程序的正确性。

实践

操作步骤

操作步骤包含三个。

  1. 持续集成。开发阶段进行构建,打包,测试。
  2. 持续交付。确保所有代码合并到Develop分支,确保能在生产环境中通过。随时交付到线上。
  3. 持续部署。合并到主干,随时准备发布到线上。

实现的关键点

  • 持续集成阶段
  1. 代码检查: 通过代码检查去除部分潜在的bug.
  2. 单元测试:每个具体代码模块的进行写单元测试。
  3. 集成测试:将所有修改的代码进行部署到一起,集成阶段跑每个服务的自动化测试用例。
  4. 分配的机器通过k8s之类的容器平台进行管理,仅需要需要化分配。
  • 持续交付阶段
  1. 保证最新的业务代码能够在生产环境进行正常的运行。
  • 持续部署阶段
  1. 目的是把类生产环境下运行通过的代码自动的发布到线上所有节点中去。一般选择手动发布。不同的业务发布需要有一定的步长操作。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,729评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,212评论 19 139
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 14,534评论 2 59
  • 为谁下的雨 止不住的思念 为谁弥漫的雾 遮住谁哭泣的眼 为谁赤诚一片的人 不见玉人 今三分之一的路 只为遇见你 后...
    微凉的夏天_阅读 1,481评论 0 0
  • 姓名:张猛 【嵌牛导读】:在海思+ov9712相机调试完成之后,便更改了比亚迪的相机BYD2013进行调试,在调试...
    oliverabc阅读 10,722评论 4 1

友情链接更多精彩内容