================================== 请看上篇 ===================================
第7章 服务的容器化过程
1.容器和虚拟化的区别
(1)容器是对应用层的抽象,它把应用程序的代码和相关依赖打包在一起执行,多个容器可以在同一台物理机上互不影响地独立运行,并且共享操作系统内核,启动非常快,占用的空间非常少,一般也就十几兆。
(2)而虚拟机是在物理硬件层上的虚拟化,每台虚拟机必须包括一整套操作系统、应用程序和各种依赖库等,启动非常慢,占用的空间为GB级别。
2. Docker将集装箱思想运用到对软件的打包上,为代码提供了一个基于容器的标准化运输系统,可以将任何应用及其依赖打包成一个轻量级、可移植、自包含的容器,可以运行在几乎所有操作系统上。
第8章 敏捷开发2.0的自动化工具
1.常用的4种开发模式
(1)瀑布式开发
(2)迭代式开发
工作可以在需求被完整地确定之前启动,并在一次迭代中完成系统的一部分功能或业务,再通过客户的反馈来细化需求,并开始新一轮的迭代。
(3)螺旋式开发
引入了风险分析
(4)敏捷软件开发
更注重软件开发过程中人的作用
2. DevOps
(1)更是一种文化的改变和鼓励沟通、交流、合作的行动,目的在于更加快速稳定地沟通高质量的应用系统。
(2)体现了精益管理的原则。
(3)DevOps也是一种能力:全局观、自动化
(4)DevOps可用一个公式表达:
文化观念的改变 + 自动化工具 = 不断适应快速变化的市场
其核心价值在于:
1》更快速地交付,响应市场的变化
2》更多地关注业务的改进与提升
3.敏捷开发
(1)持续集成(Continuous Integration,CI)和持续交付(Continuous Delivery,CD)
(2)养成测试驱动开发(Test-Driven Development,TDD)的习惯
当流程出错而中断时,必须第一时间去修复问题
========================== END ==========================