首页 > 其他分享 >SpringCloud 微服务工具集总结

SpringCloud 微服务工具集总结

时间:2023-02-13 11:32:40浏览次数:48  
标签:总结 服务 SpringCloud 工具集 间通信 熔断 组件


文章目录

  • ​​1、微服务​​
  • ​​2、为什么要用微服务?​​
  • ​​2.1 优势:​​
  • ​​2.2 缺点:​​
  • ​​3、SpringCloud微服务工具集​​
  • ​​4、SpringCloud工具集核心组件​​
  • ​​4.1 服务注册中心​​
  • ​​4.2 服务间通信问题​​
  • ​​4.3 服务熔断器​​
  • ​​4.4 服务网关组件​​
  • ​​4.5 统一配置中心​​

至此,Spring Cloud的大多数组件都已经学习过,Spring Cloud Alibaba的组件我想新建个专栏讲解。现在大致总结下这些微服务组件。

1、微服务

特点:基于单体应用基于业务进行拆分,拆分出来每一个服务独立项目,独立项目独立部署,运行在自己的计算机进程里面,针对于拆分出来的微服务都是基于分布式和管理。

2、为什么要用微服务?

2.1 优势:

  • 拆分每个服务各司其职 解耦合
  • 每个服务高度自治(可以指定专门的管理团队)
  • 不会因为一个问题导致其他服务不可用
  • 新员工可以只面对单一服务,不用面对整体应用的代码复杂度
  • 方便在项目增加新的业务功能

2.2 缺点:

  • 开发人员面对微服务部署的复杂性
  • 开发人员面对分布式系统复杂性(服务间通信、请求负载均衡、熔断、降级、高可用。。。)

3、SpringCloud微服务工具集

作用:提供了一站式微服务工具集(组件),帮助我们解决了分布式系统中各种问题(服务注册、服务间通信等等),让开发人员更专注于自己业务开发。

4、SpringCloud工具集核心组件

4.1 服务注册中心

用来管理微服务架构中每一个服务健康状态以及服务元数据存储

Eureka(Eureka Server、Eureka Client) Netflix的组件
Consul(基于GO语言开发)
zookeeper(基于java语言开发)
nacos(alibaba的组件)

4.2 服务间通信问题

两种通信方式

  • RestTemplate 如何解决请求负载均衡问题:Ribbon(Netflix)实现请求负载均衡。
  • OpenFeign(SpringCloud官方组件):Feign(netflix组件) 伪http客户端,实现请求负载均衡,解决restTemplate路劲写死的问题,灵活

4.3 服务熔断器

用来解决服务雪崩

需要的组件:Hystrix(netflix) Hystrix DashBoard(已经进入维护模式)
服务雪崩问题:当调用链路中某一个服务不可用,并导致上游服务不可用,并将这种不可用逐渐放大最终导致整个系统服务不可用,这种称之为服务雪崩。
服务熔断:当服务触发异常,或者执行业务逻辑超时等待出发服务熔断,一旦触发服务熔断之后,当前服务不可用,(自动触发)。
服务降级:站在系统整体负荷角度进行系统考虑,一般都是人为干预,服务熔断属于服务降级的一种。

4.4 服务网关组件

用来统一服务总入口(路由转发+过滤)

相关的组件:

  • zuul1.x zuul2.x
  • springcloud gateway(路由转发 请求负载均衡) 断言predicate 过滤filters

4.5 统一配置中心

用来将微服务的配置文件进行远端仓库统一管理。

config组件:configserver(用来获取远端仓库配置,并存入本地仓库)、configclient(根据configserver读取自身配置)
bus组件:消息总线 作用:用来通过MQ将微服务的所有节点连接到一起,通过消息总线实现自动配置刷新。


标签:总结,服务,SpringCloud,工具集,间通信,熔断,组件
From: https://blog.51cto.com/u_15961549/6053844

相关文章

  • 蓝桥杯链表总结(3)
    力扣链表相关题目反转链表题目:给你单链表的头节点head,请你反转链表,并返回反转后的链表。示例1:输入:head=[1,2,3,4,5]输出:[5,4,3,2,1]示例2:输入:head=[1,2]......
  • 决战圣地玛丽乔亚Day09--RocketMQ总结
            ......
  • 【博学谷学习记录】超强总结,用心分享 | vue面试1
    vuex的原理是什么?它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。每一个Vuex应用的核心就是store,里面又包括:(1)sta......
  • 模拟赛总结
    #总结###20230207赛时想T2正解没有写出来,浪费了太多时间,最后在提交时又少删了一个中间输出,导致第二题没拿上分,同时T1又没有留够时间去写暴力,导致暴力也没拿上分最后来看T......
  • 实践总结:【用户画像运营分析系统】的工程实践
    一、背景【用户画像运营分析系统】是利用用户的“一切”线上行为可追溯、可分析的特点,完成对用户多维度数据的完备收集和挖掘研究,让用户的特点和行为在企业面前都做到“可......
  • 2023/2/12 考试总结
    时间安排8.30~9.07写了个T2的70分.9.10~10.00T1感觉题意很绕,理了很久,转化为在一棵二叉树里找到一棵子二叉树的问题。想了很多做法都不太行。10.00~10.30看到100代码......
  • Elliptic Curve 的一点小总结
    定义在数学上,椭圆曲线(Ellipticcurve,缩写为EC)为一平面代数曲线,由如下形式的方程定义\[y^2=x^3+ax+b\]其中\(a\)和\(b\)为实数。这类方程被称为shortWeierstrass(韦......
  • JMM知识点总结
    JMM知识点总结一、什么是JMM?不知道大家在学习的过程有没有思考过这两个问题为什么说java是跨平台语言导致并发问题的原因是什么第一个问题,我是这么理解的,代码运行本......
  • 来了!来了!国内使用chatGPT的方式总结
    大家好,最近ChatGPT大火呀。最近几天OpenAI发布的ChatGPT聊天机器人火出天际了,连着上了各个平台的热搜榜。这个聊天机器人最大的特点是不仅可以模仿人类说话风格同时......
  • 总结:VMware出现网络异常:Failed to start LSB: Bring up/down networking解决方案
    事因:因为某些应用修改了vm的地址,当我修改回之前的ip时候,启动虚拟机,网络的状态出现问题了。  类似:12月2916:10:38kafka01network[5294]:正在打开接口enp0s8:R......