简介
Nginx 是一个高性能的 HTTP 服务器和反向代理服务器.
最常用的两个功能是反向代理和负载均衡.
反向代理
反向代理是正向代理的反面.
普通的代理服务器是需要用户主动去设置的, 用户在自己的电脑上设置并连接代理服务器,
从而可以隐藏自己的 IP, 使得应用服务器不知道客户端的 IP 地址.
而反向代理是作为应用服务器的代理, 安装在服务器上. 客户端实际上访问的反向代理服务器,
反向代理服务器再去访问实际的应用服务器, 然后将获取到的响应传送给客户端.
使用 Nginx 配置反向代理非常简单, 基础配置如下:
upstream web { server 127.0.0.1:8081; } server { listen 80; server_name web.coolcat.com; location / { proxy_set_header Host $http_host; proxy_set_header X-Forwarded-Host $http_host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Real-IP $remote_addr; client_max_body_size 5m; proxy_pass http://web; } }
上面的配置文件中设置了一个域名 web.coolcat.com
,
对这个域名的所有请求都会转发到 http://web
上.
通过配置 upstream
, 我们可以发现, 实际上的流量都被转发到了
127.0.0.1:8081
上了.
如此一来, 就实现了反向代理.
负载均衡
负载均衡和反向代理是分不开的, 负载均衡通常都是基于反向代理做的.
所谓的负载均衡, 指的是将多个请求转发到不同的后端服务器上.
upstream web { server 127.0.0.1:8081; }
在上面的反向代理配置中, 只设置了一个后端服务器地址,
如果再添加几个, 就实现了最简单的负载均衡了.
轮询
轮询策略按顺序分配请求.
upstream web { server 192.168.1.1:8081; server 192.168.1.2:8081; }
加权轮询
加权策略按比例分配请求.
upstream web { server 192.168.1.1:8081 weight=4; server 192.168.1.2:8081 weight=6; }
上面的两个服务器的访问概率就是四六开.
最少连接
最少连接将请求分配给当前连接数最少的服务器.
upstream web { least_conn; server 192.168.1.1:8081; server 192.168.1.2:8081; }
ip_hash
来自同一个 IP 的连接都会分配给同一个服务器, 通常用于 会话保持
.
upstream web { ip_hash; server 192.168.1.1:8081; server 192.168.1.2:8081; }
通用 hash
使用 hash 自定义要计算的 key. 示例中使用请求地址.
可以选择 consistent
参数可以指定使用一致性哈希算法.
upstream web { hash $request_uri; # hash $request_uri consistent; server 192.168.1.1:8081; server 192.168.1.2:8081; }
参考:
Using nginx as HTTP load balancer
Module ngx_http_upstream_module
总结
Nginx 是很常用的代理服务器, 它的功能非常强大, 性能也很好.
更多的资料请参考官方文档.
当前部分的代码
作为版本v0.14.0
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
- 杨钰莹-杨钰莹·精选集-1999-WAV整轨
- 帕鲁宝可梦Mod作者再整活:打造地狱潜者2星战Mod
- 刘谦回应春晚魔术小尼失手:本来就不可能都成功
- PS多区下架《对马岛之魂》PC版 玩家:说好的“玩无止境”呢?
- 王宏伟.2006-黑眼睛【天凡之音】【WAV+CUE】
- 张秀卿.2015-那么爱你【豪记】【WAV+CUE】
- 群星.1989-电视墙1+2【飞碟】【WAV+CUE】
- 《QQ音乐 抖音热歌榜 TOP100 2024.02.22 第八周》[FLAC/分轨][3.3GB]
- 王杰《首首都是主打歌 一场游戏一场梦》[WAV+CUE][430MB]
- 《姚斯婷 2023 满江红》[WAV+CUE][500MB]
- 三国谋定天下T0阵容推荐 T0阵容有哪些
- 三国谋定天下怎么获得皮肤 皮肤获得方法分享
- 三国谋定天下营帐怎么搭建 营帐搭建方法分享
- 《道衍诀》5月9日更新内容介绍
- 《小猫咪大城市》动物伙伴图鉴