微服务核心基础-服务发现注册、网关、配置中心、链路追踪、负载均衡、熔断

网关、服务发现注册、配置中心、链路追踪、负载均衡器、熔断

微服务核心基础-服务发现注册、网关、配置中心、链路追踪、负载均衡、熔断_第1张图片

1.网关(Zuul):路由转发+过滤器

​ /api/v1/pruduct 商品服务
​ /api/v1/order 订单服务
​ /api/v1/user 用户服务
进行检查v1后的路径进行转发

过滤器:用户下单前需要检查是否登陆。在原有服务操作进行登陆校验,比如检验更改每个模块里的代码都需要更改。现在使用网关进行拦截过滤(写一次就可以了)

2.服务注册发现(Eureka):调用和被调用方的维护

每一个服务都往注册中心注册接口,比如订单服务需要商品服务接口,注册中心将商品服务ip返回给订单

3.配置中心(config):管理配置,动态更新

每一个服务都有配置文件 application.properties 端口、数据库信息等
比如突然有一天,数据库改了,则需要重新更改部署上线

4.链路追踪:分析调用链路耗时

例子:用户下单》查询商品服务获取商品价格》查询用户信息》查询用户信息》保存数据库
这个操作调接口过多,耗时过长。
链路可以分析出调用哪个接口时间过长

系统越大,链路越长

5.负载均衡(Ribbon):分发负载

A节点负载过大分发到B节点。集群方式

6.熔断(Hystrix):保护自己的被调用方

比如双十一抢购,有时会被挤出来。在高峰时期,某一操作可能需要调用很多服务。比如用户调用积分服务,10次有1次成功,采用熔断或者降级的方式,10分钟之后再调用,如果成功正常调用即可

成功,采用熔断或者降级的方式,10分钟之后再调用,如果成功正常调用即可

7.Fegin(客户端):声明式http了护短,使得写hhtp客户端变得更加简单,只需要创建接口并注解,包装ribbon、hystrix

你可能感兴趣的:(微服务,网关,java,分布式)