集群部署,即存在一个前端,对应多个服务端(一个后端部署在多个服务器上)。
通过Nginx进行后端分发,实现集群部署。
- 通过一个前端一个后端进行部署,nginx部署前端,配置文件如下:
server {
listen 8132; #启动后的前端访问端口
server_name localhost; #启动时的地址
# =======配置前端======
# 启动后,地址栏输入:localhost:8132 或 localhost:8132/, 默认会在html文件夹下找 index.html、index.htm文件
location / {
root /usr/local/hzjcy/hzqbhs;
index index.html index.htm;
}
# =======配置后端======
# 配置代理。由于项目是在本地起动的,而我们的request需要请求其他ip地址。如果你的 request链接为localhost:8880/api/login?name=12345,那么下面配的就是location /api, 最终会代理到 http://192.168.0.0:80/api/login?name=12345
location /hzqbhs/ {
proxy_pass http://127.0.0.1:8080/hzqbhs/; #后端接口地址,端口号也要注意哦, 不是80的记得带上端口号
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
}
}
- 通过一个前端一个后端进行集群部署,nginx部署前端,配置文件如下:
# 集群+服务端权重(weight)
# 权重(weight)值越大,访问率越大
upstream jiqun {
server 192.168.0.130:8080 weight=5;
server 192.168.0.131:8080 weight=3;
}
server {
listen 8132;
server_name localhost;
location / {
root /usr/local/hzjcy/hzqbhs;
index index.html index.htm;
}
location /hzqbhs/ {
proxy_pass http://jiqun/hzqbhs/; # 路径:http:// + 集群名称 + 访问路径
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
}
}