1、Spring Cloud的产生
Spring Cloud是一系列框架的有序集合。它利用 Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线线、负载均衠、断路器、数据监控等,都可以用 Spring Boot的开发风格做到一键启动和部署。 Spring并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组台起来,通过 Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。
2、Spring Cloud的概念定义
- SpringCloud 是一个微服务框架, 相比Dubbo等RPC框架, SpringCloud提供了全套分布式系统解决方案
- SpringCloud对微服务基础框架Netflix的多个开源组件进行了封装, 同时又实现了云端平台以及和SpringBoot开发框架的集成
- SpringCloud为开发者提供了快速构建分布式系统的工具, 开发者可以快速的启动服务或构建应用, 同时能够快速和云平台资源进行对接
- SpringCloud为微服务架构开发涉及的配置管理, 服务治理, 熔断机制, 智能路由, 微代理, 控制总线, 一次性token, 全局一致性锁, leader选举, 分布式session, 集群状态管理等操作提供了一种简单地开发方式
3、什么是微服务
微服务是可以独立部署、水平扩展、独立访问(或者有独立的数据库)的服务单元, Spring Cloud就是这些微服务的大管家,采用了微服务这种架构之后,项目的数量会非常多, Spring Cloud做为大管家就需要提供各种方案来维护整个生态
(1)微服务就是一种架构风格
(2)微服务就是把一个项目拆分成独立的多个服务,并且多个服务是可以独立运行的,而每个服务都会占用线程。
4、Spring Cloud的优缺点(主要针对微服务)
(1)优点:文章来源:https://www.toymoban.com/news/detail-464145.html
- 每个服务足够内聚,足够小,代码容易理解、开发效率提高;
- 服务之间可以独立部署,微服务架构让持续部署成为可能;
- 精细度业务控制,每个服务可以各自进行负载均衡扩展和数据库扩展,而且,每个服务可以根据自己的需要部署到合适的硬件服务器上;
- 容易扩大开发团队,可以针对每个服务组件开发团队;
- 提高容错性,一个服务的内存泄露并不会让整个系统瘫痪;
- 每个服务可以用不同的技术开发,系统不会被长期限制在某个技术栈上。
(2)缺点:文章来源地址https://www.toymoban.com/news/detail-464145.html
- 开发人员要处理分布式系统的复杂性:设计服务之间的通信机制,需要考虑分布式事务等问题;涉及多个服务直接的自动化测试;服务管理的复杂性(PS:现在docker的出现适合解决这个问题);
- 对于业务数据和处理能力不是很明确的创业公司,不适合微服务架构模式,这时候最重要的是快速开发、快速部署、快速试错。
到了这里,关于Spring Cloud介绍(一)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!