【Nginx】Nginx负载均衡

这篇具有很好参考价值的文章主要介绍了【Nginx】Nginx负载均衡。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.Nginx 负载均衡

  • 1.1 官方文档

    ❤️ 完整使用方式和介绍可以查看 Nginx官方文档
    → Nginx官方 Using nginx as HTTP load balancer
    如下图:
    【Nginx】Nginx负载均衡,Nginx,nginx,负载均衡,运维


  • 1.2 默认方式:轮询(round-robin)

    round-robin — requests to the application servers are distributed in a round-robin fashion,
    以循环模式分发对服务器的请求,写法如下:
    upstream 块,定义了一组服务,后边跟这一组服务的名称:myapp1
    不用特殊声明默认就是轮询方式。
    http {
    	# 一组服务
        upstream myapp1 {
            server srv1.example.com;
            server srv2.example.com;
            server srv3.example.com;
        }
    
        server {
            listen 80;
    
            location / {
                proxy_pass http://myapp1;
            }
        }
    }
    

  • 1.3 链接最少、空闲(least-connected)

    least-connected — next request is assigned to the server with the least number of active connections,
    下一次请求会被分配给有最少活动连接数的服务器。
    这里和默认写法的区别就是在upstream块的第一行,声明了其负载均衡的方式为 least_conn
    upstream myapp1 {
        least_conn;
        server srv1.example.com;
        server srv2.example.com;
        server srv3.example.com;
    }
    ...

  • 1.4 会话持续,也叫ip 哈希(Session persistence)

    a hash-function is used to determine what server should be selected for the next request (based on the client’s IP address).
    会通过一个哈希方法、算法去决定哪一个服务会接受到下一个用户请求(算法基于用户的ip)。
    简单来讲就是会把相同的ip的请求(也就等同于同一用户的请求分发到同一个服务器,这样其服务器上保存的用户信息相关的session就可以复用,类似于持久化了用户的会话session)
    这里和默认写法的区别就是在upstream块的第一行,声明了其负载均衡的方式为 ip_hash
	upstream myapp1 {
	    ip_hash;
	    server srv1.example.com;
	    server srv2.example.com;
	    server srv3.example.com;
	}
    ...

  • 1.5 服务器权重(Weighted)

    这个很好理解,就是在不添加权重之前,每个服务器都是一视同仁,但添加权重后,权重多的服务器会被重用、也就是分配到更多的请求,前期是请求足够多。
    写法也比较简单,就是在服务器后边加上一个权重的参数 weight = x
    upstream myapp1 {
        server srv1.example.com weight=3;
        server srv2.example.com;
        server srv3.example.com;
    }
    ...

如上,每五个请求,就会有3个被打到第一个server,后边两个server各一个。

It is similarly possible to use weights with the least-connected and ip-hash load balancing in the recent versions of nginx.
官方:在最新的Nginx版本中,同样可以使用权重参数于 least-connected 和 ip-hash 上。文章来源地址https://www.toymoban.com/news/detail-524180.html

到了这里,关于【Nginx】Nginx负载均衡的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • NGINX负载均衡及LVS-DR负载均衡集群

    原理 : 1. 当用户向负载均衡调度器(Director Server)发起请求,调度器将请求发往至内核空间 2. PREROUTING链首先会接收到用户请求,判断目标IP确定是本机IP,将数据包发往INPUT链 3. IPVS是工作在INPUT链上的,当用户请求到达INPUT时,IPVS会将用户请求和自己已定义好的集群 服务进

    2024年02月13日
    浏览(31)
  • nginx的各种负载均衡策略与各种负载均衡策略如何配置

    Nginx支持多种负载均衡策略,每种策略都有其特定的适用场景和配置方式。以下是一些常见的Nginx负载均衡策略及其配置方法: 这是Nginx的默认策略,每个请求按顺序依次分发到不同的服务器上。 配置示例: 在轮询的基础上,为后端服务器分配不同的权重,权重越高,接收的

    2024年04月09日
    浏览(32)
  • nginx负载均衡的实现

    1、 安装nginx https://blog.csdn.net/qq_50247813/article/details/126550316 2、 修改配置文件,配置后端服务器 2.1、有3台后端服务需要实现负载均衡 172.17.0.2:80 172.17.0.3:80 172.17.0.4:80 2.2、修改配置文件,使用代理的方式实现负载均衡(默认轮询) 设置代理名字为myweb,代理到myweb实现负载 3、

    2023年04月16日
    浏览(29)
  • Nginx负载均衡(重点)

    server {         listen       80;         server_name  localhost;         #charset koi8-r;         #access_log  logs/host.access.log  main;         location / {             root   html;             index  index.html index.htm;             proxy_pass http://20.0.0.60:8080; #配置代理地址         }      

    2024年02月13日
    浏览(22)
  • NGINX配置负载均衡算法

    配置负载均衡服务器涉及到选择负载均衡算法、配置后端服务器、设置健康检查等多个方面。以下是一个简单的负载均衡服务器配置的示例,使用 Nginx 作为负载均衡器: 安装 Nginx: 如果还没有安装 Nginx,请先安装它。在 Ubuntu 上,可以使用以下命令: 配置负载均衡: 编辑

    2024年01月20日
    浏览(33)
  • nginx负载均衡+反向代理

    最近业务上遇到一个需求,其它系统因业务校验需要调用上级系统进行数据发送或校验,如果上级系统停机维护,其它下级系统发送的http通讯会丢失,还要一次次补发数据,耗费人工与时间。使用nginx+反向代理解决了部分需求。 目标:当服务A停机维护,其它系统会调用服务

    2024年02月08日
    浏览(34)
  • nginx负载均衡的策略

    本文同步发布于 http://laowubiji.com/index.php/2023/02/01/nginx_config/ nginx的负载均衡策略有六种: 1、轮询(默认策略,nginx自带策略):我上面的例子就是轮询的方式,它是upstream模块默认的负载均衡默认策略。会将每个请求按时间顺序分配到不同的后端服务器。 2、weight(权重,n

    2024年02月11日
    浏览(29)
  • 使用Nginx实现负载均衡

    本文将详细介绍使用Nginx实现负载均衡的方法。 负载均衡(Load Balancing)是将传入的请求流量分发到多个后端服务器的技术,以达到消除单点故障、提高可用性、增加扩展性等目的。 负载均衡需要根据算法来决定如何将请求分发到后端服务器。常见的负载均衡算法包括: 2.2.1 轮询

    2024年02月12日
    浏览(28)
  • nginx反向代理 负载均衡

    目录 1.反向代理介绍:  2.七层代理和四层代理:   2.1 七层代理:   2.2 四层代理: 3.反向代理web服务器:   3.1 代理服务器配置: 3.2 服务器配置 : 3.3 客户端访问: 3.4 代理不同端口: 4.反向代理动静分离:   4.1  准备:   4.2 代理服务器配置:   4.3 动态服务器配置:

    2024年02月10日
    浏览(34)
  • 配置Nginx实现负载均衡

    简介 在本教学文章中,我们将学习如何使用Nginx配置负载均衡,将流量均匀分配到多个后端服务器,从而提高应用程序的可靠性和性能。负载均衡是一种常见的应用场景,通过分配请求到多个服务器上,可以实现负载的均衡分配,增加系统的可扩展性和容错能力。本教程将介

    2024年02月13日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包