Nginx 代理与负载均衡详解

服务器 发布日期:2024/11/2 浏览次数:1

正在浏览:Nginx 代理与负载均衡详解

Nginx 代理与负载均衡详解

 nginx除了可以做网站的虚拟主机之外,还可以做代理器,并且, nginx在代理器的基础上可以做到负载均衡。 

 一、代理器:

  所谓代理器,即接受请求,将请求进行转发,得到结果然后返回。

  比如,我访问localhost:10010的时候nginx代理到百度的页面。

  nginx实现代理:   

 server {
  listen 10010;
  server_name localhost;
  location / {
  proxy_pass http://www.baidu.com;
  }
  }

  即,使用proxy_pass配置来进行代理,上述配置会将所有的请求都代理到百度首页上面。

 二、负载均衡:

  所谓负载均衡,本质上可以说是接受请求,然后根据配置将请求转发到不同的服务器上面。来不同服务器对请求的支持。

  要实现负载均衡,首先需要服务器池,因为负载均衡会对应多个服务器,所以需要对这些服务器封装成为一个服务器池。

 1、新建一个服务器池:

 upstream backendServers {
 server 127.0.0.1:8081;
 server 127.0.0.1:11000;
 }

 服务器池对应的配置是upstream,upstream与server并列,都写在http里面。其后面即为服务池的名称(可以取任意的名称),里面的server即对应服务器的地址。

 2、将请求代理到服务器池:

  与上述代理相同,我只需要将请求转发给服务器池即可:

  server {
  listen 10020;
  server_name localhost;
  location / {
  proxy_pass http://backendServers;
  }
  }

  启动nginx,访问localhost:10020,即可看到请求第一次到127.0.0.1:8081,第二次到127.0.0.1:11000,以此类推。即可以看到,默认的负载均衡方式即为轮询式。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。