Nginx 的反向代理与负载均衡
2016-08-16 01:52
218 查看
反向代理与负载均衡
反向代理: 明确知道要访问哪个网站,借助代理网站来访问就是正向代理;第三方服务器为我们提供了访问服务器集群的内容,但我们不知道是哪台服务器提供的内容,这种代理方式称为反向代理。
负载均衡: 建立很多个服务器,这些服务器组成一个服务器集群,当有请求时中间服务器选择一个压力较小的服务器,然后将请求引入该选择的服务器,这样每个服务器压力趋于平衡,这就是负载均衡。负载均衡是通过反向代理来实现的。
Nginx 负载均衡的实现
1.新建一个配置文件fzjh.conf中
2.编辑配置文件
3.加载配置文件
HTTP Upstream 模块
Upstream模块是Nginx服务器的一个重要模块, Upstream模块在实现 在轮询和客户端ip之间实现后端的负载均衡(即轮询算法)。常用指令有:
ip_hash指令
采用ip_hash指令,如果客户端请求已经访问了服务器A并登陆,那么第二次请求时,会将该请求通过哈希算法自动定位到该后端服务器中,而不是重新分配到别的服务器中。
server指定
server指定主要用于指定服务器名称和参数。
upstream指令
upstream指令主要用于设置一组在peoxy_pass和fastcgi_pass指令中使用代理服务器,默认负载均衡方式为轮询。
其他负载均衡的方法
负载均衡的核心就是建立服务器集群,负载均衡的实现分为硬件实现和软件实现两种方式。
优缺点:
硬件实现:运行效率非常高,但成本也非常高。
软件实现:运行效率不如硬件,成本也相对低很多。
Nginx就是通过软件的方式。
反向代理: 明确知道要访问哪个网站,借助代理网站来访问就是正向代理;第三方服务器为我们提供了访问服务器集群的内容,但我们不知道是哪台服务器提供的内容,这种代理方式称为反向代理。
负载均衡: 建立很多个服务器,这些服务器组成一个服务器集群,当有请求时中间服务器选择一个压力较小的服务器,然后将请求引入该选择的服务器,这样每个服务器压力趋于平衡,这就是负载均衡。负载均衡是通过反向代理来实现的。
Nginx 负载均衡的实现
1.新建一个配置文件fzjh.conf中
touch fzjh.conf
2.编辑配置文件
#设置用户 user root; #工作衍生的进程数 worker_process 4; #设置最大连接数 events{ worker_connections 2048; } #http部分是负载均衡服务器最重要的部分 http{ #设置负载均衡服务器待选列表 #test 服务器列表名称 upstream test{ #服务器地址可以是外网的也可以是内网的 server 192.168.1.1; server 192.168.1.2; } server{ #监听网站的端口 listen:80; #location /表示 监听网站的是根目录 location / { proxy_pass http://test; } } }
3.加载配置文件
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/fzjh.conf
HTTP Upstream 模块
Upstream模块是Nginx服务器的一个重要模块, Upstream模块在实现 在轮询和客户端ip之间实现后端的负载均衡(即轮询算法)。常用指令有:
ip_hash指令
采用ip_hash指令,如果客户端请求已经访问了服务器A并登陆,那么第二次请求时,会将该请求通过哈希算法自动定位到该后端服务器中,而不是重新分配到别的服务器中。
user root; worker_process 4; events{ worker_connections 2048; } http{ upstream test{ #设置ip_hash; 将容易个用户引向同一个后端服务器 ip_hash; server 192.168.1.1; server 192.168.1.2; } server{ listen:80; #location location / { proxy_pass http://test; } } }
server指定
server指定主要用于指定服务器名称和参数。
user root; worker_process 4; events{ worker_connections 2048; } http{ upstream test{ #weight=2 设置服务器权重 默认是1 server 192.168.1.1 weight=2; server 192.168.1.2; } server{ listen:80; #location location / { proxy_pass http://test; } } }
upstream指令
upstream指令主要用于设置一组在peoxy_pass和fastcgi_pass指令中使用代理服务器,默认负载均衡方式为轮询。
其他负载均衡的方法
负载均衡的核心就是建立服务器集群,负载均衡的实现分为硬件实现和软件实现两种方式。
优缺点:
硬件实现:运行效率非常高,但成本也非常高。
软件实现:运行效率不如硬件,成本也相对低很多。
Nginx就是通过软件的方式。
相关文章推荐
- Nginx HTTP负载均衡和反向代理配置
- nginx 实现反向代理和负载均衡
- nginx反向代理和负载均衡的配置
- nginx的反向代理和负载均衡的一个总结
- 学习Nginx HTTP负载均衡和反向代理的配置与优化(一)
- 学习Nginx HTTP负载均衡和反向代理的配置与优化(四)
- Nginx配置实现基于tcp协议的反向代理和负载均衡
- Nginx反向代理与负载均衡
- 带健康状态监测的nginx做反向代理多台服务器实现负载均衡
- Nginx反向代理和负载均衡部署指南
- Nginx反向代理与负载均衡
- 高性能web服务器nginx(四)之nginx的反向代理、负载均衡、缓存、URL重写
- nginx的反向代理和负载均衡的区别
- nginx实现反向代理和负载均衡
- centos6.6 x86_64 + nginx1.6.2 实现反向代理和负载均衡
- nginx的反向代理和负载均衡的区别是什么 - 开源中国社区
- [转]Nginx反向代理和负载均衡部署指南
- Nginx实现反向代理和负载均衡的配置及优化
- nginx之30分钟搞定nginx反向代理和负载均衡
- Nginx实现反向代理和负载均衡