美文网首页
Spring Cloud简述

Spring Cloud简述

作者: 莫问前程F6 | 来源:发表于2021-10-31 12:07 被阅读0次

单体应用存在的问题

  1. 随着业务的发展,开发变得越来越复杂
  2. 修改,新增某个功能,需要对整个系统进行测试,重写部署
  3. 一个模块出现问题,很可能导致整个系统崩溃
  4. 多团队同时对数据进行管理,容易产生安全漏洞
  5. 各个模块使用同一技术框架,局限性太大,很难根据业务选择最适合的技术架构
  6. 模块的内容太复杂,如果有员工离职,可能需要很长时间才能完成交接

为了解决上述问题,微服务架构应运而生。

分布式、集群

集群:一台服务器无法负荷高并发的数据访问量,那么就设置十台服务器一起分担压力,十台不行就设置一百台(物理层面)。很多人干同一件事情,来分摊压力
分布式:将一个复杂的问题拆分成若干个简单的小问题,将一个大型的项目架构拆分成若干个微服务来协同完成。(软件设计层面)。将一个庞大的工资拆分成若干个小步骤,分别由不同的人完成这些小步骤,最终将所有的结果进行整合实现大的需求。

微服务的优点

  • 各个服务的开发、测试、部署都相互独立,比如用户服务就可以拆分作为一个单独的服务,而它的开发也不用依赖于其他服务,如果用户量很大,我们可以很容易的对其进行负载。
  • 当一个新需求出现时,特别是一个庞大的项目系统中,你得去考虑各方面的问题,兼容性,影响度等等,而使用微服务则可以直接跳过这些费时又烧脑的环节
  • 使用微服务将项目进行拆分之后,各服务之间就消除了诸多限制,只需要保证对外提供的接口正常可用,至于使用什么语言,什么框架全都不用担心

为什么是Spring Cloud

  • Spring Cloud完全基于Srping Boot,服务调用方式是基于REST API,整合了各种成熟的产品和架构,同时基于Spring Boot也使得整体的开发、配置、部署都非常方便。
  • Spring 系的产品集功能齐全、简单好用、性能优越、文案规范于一身,因此Spring Cloud还是微服务架构中一个十分优越的实现方案。

Spring Cloud有哪些模块

  • 服务治理 Eureka
  • 服务通信 Ribbon
  • 服务通信 Feign
  • 服务网关 Zuul
  • 服务容错 Hystrix
  • 服务配置 Config
  • 服务监控 Actuator
  • 服务跟踪 ZipKin

服务治理的核心又三部分组成:服务消费者,注册中心
在分布式系统架构中,每个微服务在启动时,将自己的信息存储在注册中心,叫做服务注册
服务消费者从注册中心获取服务提供者的网络信息,通过该信息调用服务,叫做服务实现

Spring Cloud的服务治理使用Eureka实现,Eureka是Netflix开源的基于Rest的服务治理解决方案,Spring Cloud集成了Eureka,提供服务注册和服务发现的功能,可以和基于Spring Boot搭建的微服务应用轻松完成整合,开箱即用,

Spring Cloud Eureka

Eureka Server 注册中心
Eureka Client 所有要进注册的微服务通过Eureka Client连接到Eureka Server,完成注册。
操作1:配置pom.xml,和父工程的pom.xml,application.yml下的eureka配置项

server 
  port: 8788
  eureka:
    client:
      register-with-eureka: false, // 是否将当前的Eureka Server服务作为客户端进行注册
      fetch-registry: false, //是否获取其它Eureka Server服务的数据
      service-url:
        defaultZone: http://localhost:8761/eureka/  //注册中心的访问地址

操作2:创建启动类

相关文章

网友评论

      本文标题:Spring Cloud简述

      本文链接:https://www.haomeiwen.com/subject/khjoaltx.html