欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

微服务

程序员文章站 2022-06-13 22:50:22
...

1、什么是分布式?
简单说,原来是在一个 springboot里就完成的事情,现在分布在多个 springboot里做,这就是初步具备 分布式雏形了。
那么分布式有什么好处呢?

  1. 如果我要更新数据微服务,视图微服务是不受影响的
  2. 可以让不同的团队开发不同的微服务,他们之间只要约定好接口,彼此之间是低耦合的。
  3. 如果视图微服务挂了,数据微服务依然可以继续使用

微服务
2、什么是集群?
原来数据微服务只有这一个springboot, 现在做同样数据微服务的,有两个 springboot, 他们提供的功能一模一样,只是端口不一样,这样就形成了集群。
那么集群有什么好处呢?

  • 比起一个 springboot, 两个springboot 可以分别部署在两个不同的机器上,那么理论上来说,能够承受的负载就是 x 2. 这样系统就具备通过横向扩展而提高性能的机制。
  • 如果 8001 挂了,还有 8002 继续提供微服务,这就叫做高可用

微服务
3、eureka(服务注册中心)的作用
如果所有的后端微服务之间,没有互相通信,那么eureka是可以不要的。
如果后端微服务之间,有互相通信,那么在负载均衡时,相同的服务肯定会启动多个,而且使用不同的端口,这个时候,服务之间就可以通过注册在eureka中的名称来找到对方,而不是根据IP+端口号去找对方。
如果后端微服务之间相互通信,都要知道具体的IP和端口,那开发要怎么干?

4、Ribbon是什么
Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,它基于Netflix Ribbon实现。通过Spring Cloud的封装,可以让我们轻松地将面向服务的REST模版请求自动转换成客户端负载均衡的服务调用。Spring Cloud Ribbon虽然只是一个工具类框架,它不像服务注册中心、配置中心、API网关那样需要独立部署,但是它几乎存在于每一个Spring Cloud构建的微服务和基础设施中。因为微服务间的调用,API网关的请求转发等内容,实际上都是通过Ribbon来实现的

springcloud 提供了两种方式,一种是 Ribbon,一种是 Feign。
Ribbon 是使用 restTemplate 进行调用,并进行客户端负载均衡。 什么是客户端负载均衡呢? 假如是有两个注册数据微服务,注册了8001和8002两个微服务, Ribbon 会从注册中心获知这个信息,然后由 Ribbon 这个客户端自己决定是调用哪个,这个就叫做客户端负载均衡。

5、Feign 是什么
Feign 是对 Ribbon的封装,使用注解的方式,调用起来更简单。。。 也是主流的方式~ 见上
微服务

6、什么是服务链路
假如有数据服务和视图服务,随着业务的增加,就会有越来越多的微服务存在,他们之间也会有更加复杂的调用关系。这个调用关系,仅仅通过观察代码,会越来越难以识别,所以就需要通过 zipkin 服务链路追踪服务器 这个东西来用图片进行识别了。

7、什么是断路器
所谓的断路器,就是当被访问的微服务无法使用的时候,当前服务能够感知这个现象,并且提供一个备用的方案出来。

								***帅气的远远啊***
相关标签: 微服务 java