栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Nginx教程 4.Nginx负载均衡构建高可用的Web应用

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Nginx教程 4.Nginx负载均衡构建高可用的Web应用

nginx的负载均衡可以简单实现服务的双机热备,常用负载均衡算法有这几种:轮询、权重、hash等

准备工作

1.安装nginx。

2.两台一样的服务分别占用不同的端口,访问如下:

9001服务

9002服务

轮询

nginx默认负载均衡算法是轮询,需要添加upstream配置如下:

upstream  app {
	server    127.0.0.1:9001;
	server    127.0.0.1:9002;
}

server {
	listen       80;
	server_name  localhost;

	location / {
		proxy_pass http://app;
	}
}

多次访问 http://localhost 即可看到9001和9002交替访问。如果我们关闭9002服务的情况,那么就只会访问9001,相当于做了双机热备功能

权重

该场景可以根据两台服务器的性能来决定权重

upstream  app_weight {
	server    127.0.0.1:9001 weight=1;
	server    127.0.0.1:9002 weight=2;
}

server {
	listen       80;
	server_name  localhost;

	location / {
		proxy_pass http://app_weight;
	}
}
iphash

根据客户端ip取hash值来分配的服务器,该种方式可以避免前面两种导致的服务器session失效

upstream  app_iphash {
	ip_hash;
	server    127.0.0.1:9001;
	server    127.0.0.1:9002;
}

server {
	listen       80;
	server_name  localhost;

	location / {
		proxy_pass http://app_iphash;
	}
}
最少连接

分配到当前连接数最少的

upstream  app_leastconn {
	least_conn;
	server    127.0.0.1:9001;
	server    127.0.0.1:9002;
}

server {
	listen       80;
	server_name  localhost;

	location / {
		proxy_pass http://app_leastconn;
	}
}
fair

按照服务的响应时间优先分配

upstream  app_fair {
	server    127.0.0.1:9001;
	server    127.0.0.1:9002;
	fair;
}

server {
	listen       80;
	server_name  localhost;

	location / {
		proxy_pass http://app_fair;
	}
}

参考文档:https://www.jianshu.com/p/4c250c1cd6cd

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/868668.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号