ribbon和nginx在负载均衡上的使用

本文探讨了Ribbon,一个基于HTTP/TCP的客户端负载均衡工具,以及Nginx,一个高性能的反向代理服务器。Ribbon适合微服务间的通信,而Nginx用于HTTP负载均衡。两者在配置、用途和生态上有所区别。
摘要由CSDN通过智能技术生成

一、ribbon

        Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,它只具备负载均衡的能力,不具备发送请求的能力,所以要配合服务通讯组件来一起使用 ,比如restTemplate。

        ribbon使用方法:

                 方法一:DiscoveryClient 

                优点:客户获得指定服务名称下的所有服务实例,缺点:没有负载均衡,需要通过获取服务列表,来编程实现负载均衡。

                这种方式我们需要手动设置均衡负载的规则。

                

结果:

                方法二:LoadBlanceClient

                  优点:自带负载均衡算法,不需要自己实现了。缺点:使用时需要每次先根据服务id获取一个负载均衡机器,然后再通过RestTemplate调用服务。

结果:

                方法三:@LoadBalanced注解

结果:

        补充 

                ribbon的均衡方式,如果没有配置,一般默认的是轮询策略

                        轮询策略:如果给服务器从0到N编号,轮询均衡策略会从0开始依次选择一个服务器作为处理本次请求的服务器。

                        权重轮询策略:按照服务器的不同处理能力,给服务器分配不同的权重,然后请求会按照权重分配给不同的服务器。

                        随机策略:将请求随机分配给不同的服务器。

                        响应速度策略:负载均衡设备对每个服务器发送一个探测请求,看看哪台服务器的响应速度更快,就分配给哪个服务器。

二、nginx

        nginx使用方法:

                打开linux配置好的nginx.config文件

                将配置改成服务ip和端口  后面的weight为权重

                再打开conf.d下的default.conf文件,配置一下url路径

                proxy_pass是通过反向代理将客户端的请求转发给后端的一个或多个服务器,并将后端服务器的响应返回给客户端。

                保存好之后 重启nginx容器。

                然后在网页输入nginx容器的ip加端口号

结果:

三:nginx与ribbon在负载均衡方面的不同与优缺点

        差异:

                1.类型和用途:Nginx是一款高性能的Web服务器和反向代理服务器。它的负载均衡功能通常用于分发HTTP请求,将流量分发到多个后端服务器。Ribbon是Netflix开发的一个客户端负载均衡库,主要用于在微服务架构中的服务间通信。

                2.架构和适用范围:Nginx是一个独立的反向代理服务器,适用于HTTP、HTTPS等协议的负载均衡。Ribbon是一个嵌入在服务消费者端的库,适用于在微服务环境下处理服务之间的通信和负载均衡。

                3.配置和管理:Nginx通常需要在独立的配置文件中定义负载均衡规则,配置相对独立。管理员需要管理Nginx服务器的整体配置。Ribbon的配置通常嵌入在服务消费者的代码中,通过注解或配置文件进行定义。微服务的开发团队可以更灵活地管理服务间通信的负载均衡配置。

                4.生态系统:Nginx是一个通用性负载均衡和反向代理服务器,在各种场景下都有广泛的应用,不仅限于微服务架构。Ribbon更专注于微服务架构中服务间通信的负载均衡,通常与Netflix的其他组件(如Eureka、Hystrix)搭配使用。

  • 47
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值