我是靠谱客的博主 细腻网络,最近开发中收集的这篇文章主要介绍(二)nginx反向代理html,实现前后端分离(部署一套html调用多个服务),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

上篇博客是一套页面调用一个后端提供的服务,但是很多时候  我们后端会部署多个服务,为此部署配置一套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调用多个服务)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部