nginx 反向代理 REST API

利用nginx 为REST API提供负载均衡。利用nginx的负载均衡可以极大提升API服务的稳定性,本文简述此过程配置方法。

sudo apt install nginx安装nginx,接下来找出nginx配置地址,使用代码nginx -V可打印出一系列配置信息,不同平台和发行版可能不同,我这边是--prefix=/usr/share/nginx,即为nginx根目录,--conf-path=/etc/nginx/nginx.conf即为配置目录。

vim /etc/nginx/nginx.conf
注意其中的

1
2
3
...
61 include /etc/nginx/conf.d/*.conf;
62 include /etc/nginx/sites-enabled/*;

/etc/nginx/conf.d/新建service.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
upstream tornadoes {
server 127.0.0.1:6001;
server 127.0.0.1:6002;
server 127.0.0.1:6003;
server 127.0.0.1:6004;
}
server {
listen 5000;
## Individual nginx logs
access_log /var/log/nginx/web_proxy_access.log;
error_log /var/log/nginx/web_proxy_error.log;
location / {
proxy_pass http://tornadoes; ## 和upstream 名称组对应即可
}
}

这里我们将本地的5000端口负载均衡到四个REST Tornado服务上。
service nginx restart即可。