alibaba的重点


alibaba的重点

微服务是

微服务架构风格是一种将单体应用程序开发为“一套小型服务”的方法,每个服务“运行在自己的进程中”,并通过轻量级机制(通常是http资源api)进行通信。这些服务“围绕业务功能构建”,并通过全自动部署机制“独立部署”。这些服务只有最低限制的机制管理,可能是用不同的编程语音编写的。

nacos

什么是nacos

一个简易于构建云原生应用的动态服务发现、服务注册和服务管理平台

核心功能

  • 服务注册 :nacos client会通过发送REST请求的方向nacos server 注册自己的服务,提供自身的元数据。nacos server 接收注册请求后,就会将元数据存储在一个双层的内存map中。
  • 服务心跳:在服务注册后,nacos client 会维护一个定时心跳来持续台账nacos server ,说明服务一种处于可用状态,防止被剔除。默认5s发送一次心跳。
  • 服务同步:nacos server 集群之间会相互同步服务案例,用来保证服务信息的一致性。
  • 服务发现:服务消费者在调用服务提供者的服务时,会发送一个REST请求给nacos server ,获取上面注册的服务清单,并且缓存在nacos client本地,同时会在nacos client本地开启一个定时任务定时拉取服务端最新的注册消息跟新到本地缓存
  • 服务健康检查:nacos server 会开启一个定时任务用来检查注册服务实例的健康情况,对于超过15s没有收到客户端心跳的实例会将他的healthy属性置为false(客户端服务发现是不会发现),如果某个实例超过30s没有收到心跳,直接剔除该实例

负载均衡

主要的负载均衡:

  1. 集中式:在消费者和服务提供者中间使用独立的代理方式进行负载,有硬件的,也有软件的
  2. 客户端根据自己的请求做负载均衡,ribbon就是属于客户端自己做负载均衡。

什么是ribbon

ribbon是基于Netflix Ribbon 实现的一套客户端的负载均衡工具,Ribbon客户端组件提供一系列的完善的配置,如超时,重试等。通过Load Balancer 获取到服务提供的所有机器实例,Ribbon 会自动基于某种规则去调用这些服务,Ribbon也可以实现我们的负载均衡算法。

客户端负载均衡

客户端会有一个服务器地址列表,在发送请求前通过负载均衡算法选择一个服务器,然后进行访问,这是客户端负载均衡;即在客户端就进行负载均衡算法分配

服务端负载均衡

通过Nginx进行负载均衡,先发送请求,然后通过负载均衡算法,在多个服务器之间选择一个进行访问;即在服务器端再进行负载均衡算法分配

常见的负载均衡算法

  • 随机,通过随机选择服务进行执行,一般用这种方式使用较少
  • 轮训,负载均衡默认方式,请求来之后排队处理;
  • 加权轮训,通过对服务器性能的分型,给高配置,第负载的服务器分配更高的权重,均衡各个服务器的压力
  • 地址Hash,通过客户端请求的地址的HASH值取模映射进行服务器调度。ip–>hash
  • 最小连接数,即使请求均衡了,压力不一定会均衡,最小连接数法就是工具服务器的情况,比如请求积压数等参数,将请求分配到当前压力最小的服务器上。 最小活跃数

什么是feign

Feign 是Netflix开发的声明式、模块化的HTTP客户端

优势

Feign可以做到使用HTTP请求远程服务时就像调用本地方法一样的体验,开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求。

Sentinel

服务可用性场景

在一个高度服务化的系统中,我们实现的一个业务逻辑通常会依赖多个服务

如果其中的单服务不可用,就会重新线程池里所有线程都因等待响应被堵塞,从而造成整个服务链路不可用,进而导致整个系统服务雪崩

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LMY~~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值