Spring Cloud(一)Netflix

SpringCloud—Netflix(五大神兽)

学习目标

Ø 微服务、分布式概念、微服务架构

Ø 注册中心:Eureka

Ø 负载均衡:Ribbon

Ø 声明式调用远程方法:OpenFeign

Ø 熔断、降级、监控:Hystrix

Ø 网关:Gateway

Ø 链路跟踪:Sleuth

Ø 服务注册和配置中心:Spring Cloud Alibaba Nacos

Ø 熔断、降级、限流:Spring Cloud Alibaba Sentinel

开发步骤

  • 建module

  • 改POM(导入依赖)

  • 写YML(编写配置文件)

  • 主启动(开启功能@Enablexxxx)

  • (配置类)

  • 业务类

一 微服务理论和 微服务架构

1.1 微服务

强调的是服务的大小,他关注的是某一个点,是具体解决某一个问题/提供落地对应服务的一个服务应用,狭义上看,可以看作是IDEA中的一个个微服务工程,或者是Moudel

1. 2 微服务架构

微服务架构是一种架构模式 ,或者说是一种架构风格 , 它提倡将单一的应用程序划分为一组小的服务, 每个服务运行在其独立的自己的进程内, 服务之间的通信互相协调, 互相配置 为用户提供 最终的价值,

​ 服务之间采用轻量级的通信机制互相沟通, 每个服务都围绕着具体的业务进行构建 ,并且能够独立部署到生产环境中, 另外, 应尽量避免统一的 集中式服务管理机制… 对具体的一个服务而言, 应根据业务的上下文, 选择合适的语言,工具对其进行开发构建,可以有一个非常轻量级的集中式管理来协调这些服务,可以使用不同的语言来编写服务,也可以使用不同的数据存储。

从技术维度来理解下

微服务的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底的去耦合,每一个微服务提供单个业务功能的服务,一个服务做一件事,从技术角度看就是一种小而独立的处理过程,类似进程概念,能够自行独立启动或销毁,拥有自己的数据库。

1. 3 微服务优缺点在这里插入图片描述

二. 什么是Spring cloud

2. 1 spring boot和Spring Cloud 之间的关系在这里插入图片描述

2. 2 Spring Cloud 可以干嘛?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8fgErF8Y-1627044691986)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1626312391030.png)]

2.3 RestTemplate

  • 是什么

​ RestTemplate提供了多种便捷访问远程Http服务的方法,是一种简单便捷的访问Restful服务模板类,是Spring 提供的用于访问Rest服务的客户端模板工具集

使用RestTemplate访问Restful接口非常的简单粗暴无脑。(url,requestMap,ResponseBean.class)这三个参数分别代表REST请求地址、请求参数、Http响应转换被转换成的对象类型。

三.Eureka服务注册与发现

Eureka采用了CS的设计架构,Eureka Server作为服务注册功能的服务器,它是服务注册中心

什么是服务治理

   SpringCloud封装了Netflix公司开发的Eureka模块来实现服务治理。
在传统的RPC远程调用框架中,管理每个服务与服务之间依赖关系比较复杂、所以需要进行服务治理,管理服务与服务之间依赖关联,以实现服务调用,负载均衡、容错等,实现服务发现与注册。

什么是服务注册

      Eureka采用了CS的设计架构,Eureka Server作为服务注册功能的服务器,它是服务注册中心。
而系统中的其他微服务,使用Eureka的客户端连接到Eureka Server并维持心跳连接。这样系统的维护人员可以通过Eureka Server来监控系统中各个微服务是否正常运行。
在服务注册与发现中,有一个注册中心。当服务器启动的时候,会把当前自己服务器的信息,比如:服务通讯地址等以别名方式注册到注册中心上。
另一方(消费者服务),以该别名的方式去注册中心上获取到实际的服务通讯地址,然后,再实现本地RPC远程调用。

RPC远程调用框架核心设计思想

​ 在于注册中心,因为使用注册中心管理每个服务与服务之间的一个依赖关系(服务治理概念)。

在任何RPC远程框架中,都会有一个注册中心(存放服务地址相关信息(接口地址))。

3.1 Eureka两组件

Eureka Server提供服务注册服务

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

EurekaClient通过注册中心进行访问

是一个Java客户端,用于简化Eureka
Server的交互,客户端同时也具备一个内置的、使用轮询(round-robin)负载算法的负载均衡器。在应用启动后,将会在Eureka
Server发送心跳(默认周期30秒)。如果Eureka
Server在多个心跳周期内没有收到某个节点的心跳,Eureka

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值