概述
上篇博客是一套页面调用一个后端提供的服务,但是很多时候 我们后端会部署多个服务,为此部署配置一套nginx代理。
可以实现为nginx配置多种策略,如下说明:
负载均衡策略
1、轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
upstream backserver {
server 192.168.0.14;
server 192.168.0.15;
}
2、指定权重
指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
upstream backserver {
server 192.168.0.14 weight=10;
server 192.168.0.15 weight=10;
}
3、IP绑定 ip_hash
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
upstream backserver {
ip_hash;
server 192.168.0.14:88;
server 192.168.0.15:80;
}
nginx.conf配置实例(第二种:指定权重):
upstream tomcatserver1 {
server 192.168.1.9:8081 weight=2;
server 192.168.1.29:8081 weight=10;
}
server {
listen 8082;
listen 192.168.1.29:8082;
server_name 192.168.1.29;
location / {
proxy_pass http://tomcatserver1;
index index.html index.htm;
}
}
每个设备的状态参数可设置为:
1.down 表示单前的server暂时不参与负载
2.weight 默认为1.weight越大,负载的权重就越大,请求次数就越多。
3.max_fails :允许请求失败的次数默认为1.当超过最大次数时,返回proxy_next_upstream 模块定义的错误
4.fail_timeout:max_fails次失败后,暂停的时间。
5.backup: 其它所有的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻。
这样配置可以简单实现请求多服务,但是缺点是服务宕机不会转向请求其他正常服务。
在调试阶段出现点小问题,直接全部kill掉nginx服务,命令:
taskkill /fi "imagename eq nginx.exe" /f
gzip优化:开启gzip压缩,降低传输流量,减短响应时间:
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml application/json ;
gzip_vary on;
网友测试加载速度对比:
网友测试连接:https://blog.csdn.net/chunyuan314/article/details/56312634
最后
以上就是细腻网络为你收集整理的(二)nginx反向代理html,实现前后端分离(部署一套html调用多个服务)的全部内容,希望文章能够帮你解决(二)nginx反向代理html,实现前后端分离(部署一套html调用多个服务)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复