• 微服务:互联网业务的复杂度和规模都在快速地增长,单体式应用很难满足这种发展需求,将应用程序分解成独立的微服务,每个微服务都能很好地完成一个小任务,化整为零。每个微服务可以选择最合适的技术和语言来开发,由小型团队创建和管理,彼此沟通成本较低,从而做到快速迭代。
  • DevOps:DevOps 打造了一套持续交付的流程,包括:开发、编译、测试、发布、运营等节点。微服务解决了单个应用规模大、迭代速度慢、扩展变更难等问题,提升了应用开发的速度,但整体研发流程的效率还有待于提升,传统职能矩阵式的研发方式就不太适应了,需要以产品为线索打破不同职责团队之间的隔阂,开发运维一体化就应运而生了,做到持续集成和持续交付。
  • 云计算:云计算,这是一种全新的 IT 基础设施,我们可以像使用水电一样使用计算、存储和网络等资源。我们人类文明的发展主要体现在分工合作上,就像水电成为基础设施之后,我们每家每户就不会自己生产水和电了,技术的发展也符合这个趋势,云计算就是将一些通用的、标准的技术纳入到基础设施范畴,让我们可以聚焦在业务领域,通过分工协作来提升交付的效率。微服务关注软件的开发期,云计算关注软件的运行期,DevOps 就是连通开发期和运行期。互联网业务的访问量都是海量的,而且存在波峰波谷,这就需要应用能够弹性伸缩,也就要求基础资源可以自动地创建和销毁,从而引出了虚拟机和容器等云计算技术。
  • Spring Cloud:一套分布式服务治理的框架,为我们提供分布式服务所依赖的配置中心、服务注册发现、断路器、负载均衡、微代理、消息总线、数据监控等套件。Spring Boot 是 Spring 的快速配置脚手架,我们可以基于 Spring Boot 快速开发单个微服务,Spring Cloud 是基于 Spring Boot 的微服务开发套装;Spring Boot 专注于快速地开发单个微服务,Spring Cloud 关注全局的服务治理框架。Spring 没有重复发明轮子,它只是将目前各家公司比较成熟、经过考验的服务框架组合起来,通过 Spring Boot 封装屏蔽了复杂的配置和实现原理,最终给开发者提供了一套简单易懂、易部署和易维护的分布式系统开发工具包。微服务是可以独立部署、水平扩展、独立访问的服务单元,Spring Cloud 就是这些微服务的大管家,微服务架构下组件的数量会非常多,Spring Cloud 需要提供各种方案来管理整个生态。Spring Boot 可以不依赖 Spring Cloud 独立使用,但是 Spring Cloud 离不开 Spring Boot

stray
129 声望10 粉丝