SpringCloud02

1. 什么是服务端负载均衡,什么是客户端负载均衡

服务端负载均衡:nginx

用户访问时,不知道 实际访问的真实路径(由nginx反向代理 分流器实现)

客户端负载均衡:ribbon

内部互相调用应用时,知道真实路径(去注册中心拉到清单,然后策略分配)

负载均衡面试点:

Ribbon :负载均衡分为两种类型:客户端负载均衡和服务端负载均衡

客户端负载均衡: 调用方知道被调方的地址 我们使用的Ribbon属于客户端负载均衡,拦截器在拦截到请求之后,会去服务中心去拉取被调方的地址

服务端负载均衡:调用方不知道被调方的服务地址,举例:Nginx属于服务端负载均衡,反向代理

nacos实例面试点

实例的临时性和非临时性:

临时性的需要实时上报自己的状态,如果不上报,注册中心就直接干掉

非临时性的是nacos主动去拉取服务看是否存活,即使没有存活,nacos也会保存不会删掉,如果设置为临时的一定要保证服务的高可用,不然用户访问会报错


1.Nacos配置管理

集中管理微服务的配置,实现热更新

从微服务拉取配置(java程序中)

是从nacos拉取配置,并且与本地配置进行合并(nacos配置优先级更高)

spring引入了一种新的配置文件:bootstrap.yaml文件,会在application.yml之前被读取

一般如果不使用配置中心 ,配置文件是application.yml 但是如果使用了配置中心,必须加入bootstrap.yml配置文件 此时会有两个配置文件,为了简约,可将application中的内容放在bootstrap 在删除application文件

所以只保留bootstrap文件

并引入nacos-config依赖

<!--nacos配置管理依赖-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>


配置热更新

(不需要微服务宕机,直接在配置中心修改配置就叫热更新)


多环境支持

配置共享:在配置中心 配置一个公共配置

持久化配置

nacos对于服务的配置信息保存到了自己内部的数据库:derby,一般在开发环境下需要让nacos读取外部数据库配置信息,方便后期的维护


Feign替代RestTemplate

引入依赖

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

Feign使用优化

场景: 连接数是一定的,当前微服务一次最大可处理200个连接数,此时如果调用a服务给了200个连接数,那么b服务则无链接发过去,优化目的 ,雨露均沾,a,b各得100个链接去处理

方案:提高Feign的性能主要手段就是使用连接池代替默认的URLConnection。

这里我们用Apache的HttpClient来进行优化

1)引入依赖

在order-service的pom文件中引入Apache的HttpClient依赖:

<!--httpClient的依赖 -->
<dependency>
    <groupId>io.github.openfeign</groupId>
    <artifactId>feign-httpclient</artifactId>
</dependency>

2)配置连接池

在order-service的application.yml中添加配置:

feign:
  httpclient:
    enabled: true # 开启feign对HttpClient的支持
    max-connections: 200 # 最大的连接数
    max-connections-per-route: 100 # 每个路径的最大连接数


Gateway服务网关

为什么需要网关

Gateway网关是我们服务的守门神,所有微服务的统一入口。

网关的核心功能特性

1.请求路由和负载均衡:请求经过网关,网关不处理,根据一定的规则,请求转发给某个微服务,当路由的目标微服务有多个时,还需要负载均衡

2.权限控制 :校验用户是是否有请求资格,如果没有则进行拦截。

3.限流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值