Nginx介绍
是高性能的 HTTP 和反向代理的web服务器
Nginx反向代理:就是将前端发送的动态请求由 nginx 转发到后端服务器
Nginx反向代理的好处:
- 提高访问速度
- 进行负载均衡
- 保证后端服务安全
负载均衡:就是把大量的请求按照我们指定的方式均衡的分配给集群中的每台服务器
Nginx反向代理配置方式
在Nginx的配置文件 nginx.conf 中配置反向代理
server{
listen 80;
server_name localhost;
location /api/{
proxy_pass http://localhost:8080/admin/;#反向代理
}
}
将 localhost:80 发出的带有 /api/ 的请求发送 http://localhost:8080/admin/ ,并在最后自动添加 /api/ 后的路径
效果:
Nginx负载均衡配置方式
在Nginx的配置文件 nginx.conf 中配置负载均衡
upstream webserver{
server 192.168.100.128:8080;
server 192.168.100.129:8080;
}
server{
listen 80;
server_name localhost;
location /api/{
proxy_pass http://webserver/admin/;#反向代理
}
}
nginx负载均衡策略:
名称 | 说明 |
---|---|
轮询 | 默认方式 |
weight | 权重方式,默认为1,权重越高,被分配的客户端请求就越多 |
ip_hash | 依据ip分配方式,这样每个访客可以固定访问一个后端服务 |
least_conn | 依据最少连接方式,把请求优先分配给连接数少的后端服务 |
url_hash | 依据url分配方式,这样相同的url会被分配到同一个后端服务 |
fair | 依据响应时间方式,响应时间短的服务将会被优先分配 |
upstream webserver{
server 192.168.100.128:8080 weight=90;
server 192.168.100.129:8080 weight=10;
}
server{
listen 80;
server_name localhost;
location /api/{
proxy_pass http://webserver/admin/;#反向代理
}
}