再次安装使用nginx发现都已经的差不多了,这次记录一下。
-
nginx是什么? Nginx是一款轻量级Web服务器、也是一款反向代理服务器
-
Nginx可以干什么
- 可以作为HTTP反向代理服务器
- 可以接支持Rails和PHP的程序
- 作为负载均衡服务器
- 作为邮件代理服务器
- Nginx特点
- 高稳定
- 高性能
- 资源占用少
- 功能丰富
- nginx常用命令
-
mac安装:brew nginx install
-
stop - 快速关闭服务
-
quit - 正常关闭服务
-
reload - 重新加载配置文件
-
reopen - 重新打开日志文件
-
nginx查看版本号、查看安装目录 nginx -v / nginx -V
-
修改配置文件nginx.conf sudo vim nginx.conf 或mac中Shit+command+G,查询目录,打开nginx.conf进行修改
如:启动:sudo nginx;关闭:sudo -s stop
- Nginx负载均衡配置、常用策略、场景及特点
-
轮询(默认)
优点:实现简单
缺点:不考虑每台服务处理能力
upstream www.example.com{
server www.example.com.8080;
server www.example.com.9080;
}
-
权重
优点:考虑了每台服务器处理能力的不同
upstream www.example.com{
server www.example.com.8080 weight=15;
server www.example.com.9080 weight=10;
}
注:weight默认是1
如果多个配置权重的节点,比较相对值
-
ip hash
优点:能实现同一个用户访问同一个服务器
缺点:根据ip hash不一定平均
upstream www.example.com{
ip_hash;
server www.example.com.8080;
server www.example.com.9080;
}
-
url hash(第三方)
优点:能实现同一个服务访问同一个服务器
缺点:根据url hash分配请求不平均,请求频繁的url会不平均,请求频繁的url会请求到同一个服务器上
upstream www.example.com{
server www.example.com.8080;
server www.example.com.9080;
hash $request_uri;
}
-
fair(第三方)
特点:按后端服务器的响应时间来分配请求,响应时间短的优先分配
upstream www.example.com{
server www.example.com.8080;
server www.example.com.9080;
fair;
}
- 负载均衡参数讲解扩展知识点
upstream backserver{
ip_hash;
server 127.0.0.1:9080 down;(down表示当前的server暂时不参与负载)
server 127.0.0.1:8080 weight=2;(weight默认为1.weight越大。负载的权重就越大)
server 127.0.0.1:6060;
server 127.0.0.1:7070 baskup;(其它所有的非baskup机器down或者忙的时候,请求backup机器)
}
- 一个简单的配置
upstream mytomcats {
server 127.0.0.1:8080 weight=3;
server 127.0.0.1:9080 weight=1;
}
server {
listen 80;
server_name www.example.com;
access_log /Users/Documents/Test/host.access.log mycustomformat;#日志位置
location / {
proxy_pass http://mytomcats; #这里对应upstream mytomcats
index index.html index.htm;
}