Spring-Cloud(一)

微服务 Spring-Cloud

​ 马丁弗勒 2014 年提出微服务架构,将单一得应用程序划分成一个小得服务,服务之间相互协调,相互配合,为用户提供最终的价值,运行在独立得进程中。

合久必分,分久必合

分布式体系 (12块)

服务注册与发现+服务调用+服务熔断+负载均衡+服务降价+服务消息队列+配置中心管理+服务网关+服务监控+路追踪+自动化构建部署+服务定时任务 +微服务架构图
Spring-Cloud(一)

主要的部分
版本推荐:springboot 2.x和spring cloud H
cloud 组成
Spring-Cloud(一)

一、服务注册中心

1、Eureka(已停止维护)

什么是服务治理

spring cloud 封装了Netflix公司开发的Eureka模块来实现服务治理

​ 在传统的rpc远程调用框架中,管理每个服务与服务之间的依赖关系比较复杂,管理比较复杂,所有需要使用服务治理,管理服务于服务之间依赖关系,可以实现服务调用、负载均衡、容错等、实现服务发现与注册。

什么是服务注册与发现

Eureka采用了cs的设计架构,Eueka server 作为服务注册功能的服务器,它是服务注册中心。而系统中的其它微服务,使用Eureka的客服端连接到Eureka Server 并维持心跳连接。这样系统维护人员就可以 通过EurekaServer 来监控系统中的各个微服务是否正常运行。

在服务注册与发现中,有一个注册中心。当服务器启动的时候,会把当前自己服务器的信息如服务器地址通讯地址等以别名的方式注册到注册中心上。另一方(消费者|服务提供者),以别名的方式去注册中心上获取带实际的服务通讯地址,然后再实现本地的rpc调用。

rpc远程调用框架核心设计思想:在于注册中心,因为使用注册中心管理每个服务于服务之间的一个依赖关系(服务治理概念)。在任何rpc远程框架中,都会有一个注册中心(存放服务地址相关信息(接口地址))

Spring-Cloud(一)

Eureka两大组件:Eureka Server 和Eureka Client

Eureka Server提供服务注册服务

​ 各个微服务节点通过配置启动后,会在Eureka Server 中进行注册,这样Eureka Server 中的服务注册表中将会存储所有可用服务节点的信息,服务节点的信息可以在界面中直接观看到。

Eureka Client通过注册中心进行访问

是一个Java 客户端,用于简化Eureka Server的交互,客户端同时也具备一个内置的,使用轮询(round-Robin)负载算法的负载均衡器。在应用启动后,将会向Eureka Server 发送心跳(默认30s)。如果Eureka Server在多个心跳周期内没有接受到每个节点的心跳,Eureka Server 将会从服务注册中心把这个服务节点移除(默认90s)。