- nginx的应用场景
- 反向代理,负载均衡
- 虚拟主机
- http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。
- nginx的负载策略
- 轮询的策略
- 指定权重
- IP绑定
- nginx解决网站跨域问题
- nginx配置防盗链
- Nginx进程模型
- 正向代理和反向代理分别如何配置
- 正向代理:简单讲即客户端知道代理者的存在,客户端可以配置代理,知道代理到了那台服务器。
- 反向代理:客户端不知道代理服务器的存在,压根不知道请求被代理到了何处,该配置是在服务器上的nginx上配置。
- session不同步怎么办?(因为Nginx默认的轮询方法是有这个问题的
- Apache+tomcat进行session复制
- JvmRoute负载均衡
- spring_session+redis,把session放到缓存中实现session共享
- Nginx默认的轮询方法设置为IP绑定
- Nginx+Keepalive高可用
- Nginx高并发优化思路
- nginx能扛得住5万并发
- 硬件升级–>带宽升级–> 硬件负载均衡 -->DNS负载均衡 --> 多镜像站点 --> Ngnix群集
网页静态服务器
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
负载均衡策略
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;
配置代码如下所示
upstream backserver {
server 127.0.0.1:8080;
server 127.0.0.1:8081;
}
server {
listen 80;
server_name www.i-ronge.com;
location / {
proxy_pass http://backserver;
index index.html index.htm;
}
}
宕机轮训配置规则
server {
listen 80;
server_name www.i-ronge.com;
location / {
proxy_pass http://backserver;
index index.html index.htm;
proxy_connect_timeout 1;
proxy_send_timeout 1;
proxy_read_timeout 1;
}
}
nginx解决网站跨域问题
配置:
server {
listen 80;
server_name www.i-ronge.com;
location /A {
proxy_pass http://a.a.com:81/A;
index index.html index.htm;
}
location /B {
proxy_pass http://b.b.com:81/B;
index index.html index.htm;
}
}