博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nginx做负载均衡配置文件
阅读量:5838 次
发布时间:2019-06-18

本文共 1546 字,大约阅读时间需要 5 分钟。

nginx做负载均衡是在反向代理的基础上做的,代码如下:

 

Java代码  
  1. ## Basic reverse proxy server ##  
  2. ## Apache backend for www.baidu.com ##  
  3. upstream henushang  {  
  4.         # 不过最好换成你们的服务器测试,因为我测试的时候使用jd和baidu的都没有连接成功,         # 换成自己的服务器就行了,估计是那里有限制,如果哪位知道,请指教  
  5.         server www.jd.com weight=1; # 或者ip:port这样形式也是可以的  
  6.     server www.baidu.com weight=9; # 或者ip:port这样形式也是可以的  
  7. }  
  8.   
  9. ## Start www.baidu.com ##  
  10. server {  
  11.     listen 80;  
  12.     server_name  www.henushang.cn;#监听的域名  
  13.   
  14.     access_log  logs/henushang.access.log;  
  15.     error_log  logs/henushang.error.log;  
  16.     root   html;  
  17.     index  index.html index.htm index.php;  
  18.   
  19.     ## send request back to apache ##  
  20.     location / {  
  21.         proxy_pass  http://henushang;#与上面的upstream名字相对应  
  22.   
  23.         #Proxy Settings  
  24.         proxy_redirect     off;  
  25.         proxy_set_header   Host             $host;  
  26.         proxy_set_header   X-Real-IP        $remote_addr;  
  27.         proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;  
  28.         proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;  
  29.         proxy_max_temp_file_size 0;  
  30.         proxy_connect_timeout      90;  
  31.         proxy_send_timeout         90;  
  32.         proxy_read_timeout         90;  
  33.         proxy_buffer_size          4k;  
  34.         proxy_buffers              4 32k;  
  35.         proxy_busy_buffers_size    64k;  
  36.         proxy_temp_file_write_size 64k;  
  37.    }  
  38. }  

 

 

 

nginx做负载均衡有如下几种方式:

1、RR(默认)  每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。 例如:  

Java代码  
  1. upstream tomcats {     
  2.                server 10.1.1.107:88  max_fails=3 fail_timeout=3s weight=9;   
  3.                server 10.1.1.132:80  max_fails=3 fail_timeout=3s weight=9;    
  4.     

 

2、ip_hash  每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。 例如:  

Java代码  
  1. upstream tomcats {   
  2.            ip_hash;    
  3.            server 10.1.1.107:88;    
  4.            server 10.1.1.132:80;    
  5. }  

    

3、fair(第三方)  按后端服务器的响应时间来分配请求,响应时间短的优先分配。  

 

4、url_hash(第三方)  按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。  

转载地址:http://kljcx.baihongyu.com/

你可能感兴趣的文章
2016-9-20 linux虚拟机重新启动后不能联网的问题
查看>>
Injection Attacks-XML注入
查看>>
Redhat gluster storage(一)
查看>>
『高级篇』docker之DockerSwarm的了解(27)
查看>>
通用peU盘启动盘装win10系统
查看>>
nfs服务共享不成功的解决,内涵nfs***
查看>>
SSH 配置 远程管理主机
查看>>
mount挂载
查看>>
开源协议
查看>>
Centos7防火墙之iptables
查看>>
再和“面向对象”谈恋爱 - 对象相关概念(二)
查看>>
课程第五天内容《基础交换 五》
查看>>
5分钟入门git模式开发
查看>>
搭建redis服务器
查看>>
discuz防刷新、防外部提交研究
查看>>
HTML转义字符
查看>>
JS+PHP实现弹出滑动验证码实例
查看>>
【Zabbix】Zabbix snmptrap 配置
查看>>
解决LINUX(CENTOS)下SSH连接超时自动断开的问题
查看>>
函数计算工具链新成员 —— Fun Local 发布啦
查看>>