本地负载均衡与 Nginx 区别 | 学习笔记

简介: 快速学习 本地负载均衡与 Nginx 区别

开发者学堂课程【精通 Spring Cloud Alibaba本地负载均衡与 Nginx 区别学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/634/detail/10074


本地负载均衡与 Nginx 区别


内容简介:

一、本地负载均衡与 Nginx 区别

二、Nginx 实现负载均衡与本地负载均衡器应用场景

 

整个负载均衡效果都是客户端实现的及本地实现


一、本地负载均衡与 Nginx 区别

Nginx 是客户端所有的请求统一都交给 Nginx 处理,然后再由 Nginx 实现负载均衡转发,属于服务器端负载均衡器。

本地负载均衡器是属于客户端负载均衡,消费者从注册中心上获取接口调用地址列表,本地实现负载均衡算法(轮训、随机、hash 一致性、权重)等,整个负载均衡效果都是客户端实现的及本地实现,

原理:

获取接口地址列表,采用算法获取选择一个接口地址地址实现本地rp远程调用。

例如:

@RequestMapping(" /orderToMember")

public Object orderToMember( ){

//1.根据服务名称从注册中心获取集群列表地址

List<ServiceInstance> instances =

discoveryClient.getInstances(serviceld: "meitemayikt-member" );

//2.根据列表任意选择一个实现本地 rpc 调用 rest 采用我们负载均衡的算法

ServiceInstancesrviceInstance= loadBalancer.getSingleAddres(instances);

URI rpcMemberUrl = srviceInstance.getUri();

string result = restTemplate.getForobject(url: rpcMemberUrl + "/getUser",String.class);

return“订单调用会员返回结果:" + result;

第一步先去注册中心拿到集群列表的地址,在通过上面的集合经过算法选择一个 rpc,其中所有的算法都不是通过服务器实现的,而是本地实现。

本地负载均衡器:

可以自己写、ribbon Spr.ingCl.oud 第一代中、loadbalancer(属于 SpringCLoud 自己研发)。

问题:如何选择 ribbon 还是 loadbalancer

SpringCLoud Rest 或者 Openfeign 都是默认支持 ribbon,使用这两个客户端不需要 ribbon 负载均衡价包,它已经自动帮实现好。

问题:本地负载均衡器与 Nginx 实现负载均衡器有那些区别呢?

Nginx 负载均衡器:

属于服务器负载均衡器,客户端所有的请求都统一交给我们的 Nginx,在由我们的 nginx.转发到我们的真实服务实现负载均衡。

本地负载均衡器:

属于客户端负载均衡。


二、Nginx 实现负载均衡与本地负载均衡器应用场景

Nginx 实现对我们服务器实现负载均衡器一般用于 tomcat/jetty 服务器。

本地负载均衡器属于客户端负载均衡器一般用于微服务 rpa 远程调用比如 dubborest 模版、openfeign 或者 tpe 远程调用框架。

相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
18天前
|
负载均衡 算法 应用服务中间件
面试题:Nginx有哪些负载均衡算法?Nginx位于七层网络结构中的哪一层?
字节跳动面试题:Nginx有哪些负载均衡算法?Nginx位于七层网络结构中的哪一层?
32 0
|
8天前
|
负载均衡 应用服务中间件 nginx
Nginx 负载均衡
Nginx 负载均衡
22 2
|
2月前
|
tengine Rust 负载均衡
反向代理学习笔记(一) Nginx与反向代理绪论
反向代理学习笔记(一) Nginx与反向代理绪论
|
2月前
|
负载均衡 Java 应用服务中间件
|
2月前
|
前端开发 应用服务中间件 nginx
Nginx中root与alias区别
Nginx中root与alias区别
24 0
|
2月前
|
负载均衡 监控 应用服务中间件
Nginx负载均衡:你的网站流量翻倍利器
Nginx负载均衡:你的网站流量翻倍利器
43 0
|
2月前
|
消息中间件 关系型数据库 MySQL
使用Nginx的stream模块实现MySQL反向代理与RabbitMQ负载均衡
使用Nginx的stream模块实现MySQL反向代理与RabbitMQ负载均衡
63 0
|
3月前
|
缓存 负载均衡 算法
【Nginx】Nginx 负载均衡
【1月更文挑战第25天】【Nginx】Nginx 负载均衡
|
存储 缓存 前端开发
Nginx 基础配置(二)|学习笔记
快速学习 Nginx 基础配置
200 0
Nginx 基础配置(二)|学习笔记
|
自然语言处理 应用服务中间件 开发工具
Nginx 基础配置(一)|学习笔记
快速学习 Nginx 基础配置
111 0
Nginx 基础配置(一)|学习笔记