zoukankan      html  css  js  c++  java
  • OpenFire源码学习之三十:haproxy负载均衡

    安装

    使用Haproxy做负载均衡。

    下载地址:http://www.haproxy.com/downloads/trial-versions/

    下载后解压:

    tar zcvf haproxy-1.3.20.tar.gz

    cd haproxy-1.3.20

    make TARGET=linux26 PREFIX=/usr/local/haprpxy

    make install PREFIX=/usr/local/haproxy

    本人安装在/usr/local/haproxy

    解下来编辑haproxy.cfg

    vi haproxy.cfg

    global  
        maxconn 51200  
        chroot /usr/local/haproxy  
        uid 99  
        gid 99  
        daemon  
        #quiet  
        nbproc 2 #进程数  
        pidfile /usr/local/haproxy/haproxy.pid  
      
    defaults  
            mode http #默认的模式mode { tcp|http|health },tcp是4层,http是7层,health只会返回OK  
            #retries 2 #两次连接失败就认为是服务器不可用,也可以通过后面设置  
            option redispatch #当serverId对应的服务器挂掉后,强制定向到其他健康的服务器  
            option abortonclose #当服务器负载很高的时候,自动结束掉当前队列处理比较久的链接  
            timeout connect 5000ms #连接超时  
            timeout client 30000ms #客户端超时  
            timeout server 30000ms #服务器超时  
            #timeout check 2000 #=心跳检测超时  
            log 127.0.0.1 local0 err #[err warning info debug]  
            balance roundrobin #负载均衡算法  
    	#option  httplog #日志类别,采用httplog  
    	#option  httpclose   #每次请求完毕后主动关闭http通道,ha-proxy不支持keep-alive,只能模拟这种模式的实现  
    	#option  dontlognull  
    	#option  forwardfor  #如果后端服务器需要获得客户端真实ip需要配置的参数,可以从Http Header中获得客户端ip  
      
    listen admin_stats  
            bind 0.0.0.0:8888 #监听端口  
            option httplog #采用http日志格式  
            stats refresh 30s #统计页面自动刷新时间  
            stats uri /haproxy-stats #统计页面url  
            stats realm Haproxy Manager #统计页面密码框上提示文本  
            stats auth admin:admin #统计页面用户名和密码设置  
            #stats hide-version #隐藏统计页面上HAProxy的版本信息  
      
    listen test1  
            bind :5222  
            mode tcp  
            server t1 192.169.1.120:5222  
            server t2 192.169.1.240:5222  
    		server t3 192.169.1.250:5222  
      
    listen test2 192.169.1.245:80  
           option httpclose  
           option forwardfor  
            server s1 192.169.1.120:9090 check weight 1 minconn 1 maxconn 3 check inter 40000        
            server s2 192.169.1.240:9090 check weight 1 minconn 1 maxconn 3 check inter 40000 
    		server s3 192.169.1.250:9090 check weight 1 minconn 1 maxconn 3 check inter 40000 

    启动

    开启:/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/haproxy.cfg 

    查看进程:ps -e|grep haproxy

    杀死进程:kill -s 9 9883

    另外还需要设置下linux环境下的打开连接数

    修改linux tcp参数

    ulimit -n 102400


  • 相关阅读:
    Java笔记(二十一) 动态代理
    Java笔记(二十) 注解
    Java笔记(十九) 反射
    Java笔记(十八)同步和协作工具类
    Java笔记(十七) 异步任务执行服务
    Spring使用笔记(四) 面向切面的Spring
    Spring使用笔记(三) 高级装配
    Java笔记(十六)并发容器
    Java笔记(十五) 并发包
    Java笔记(十四) 并发基础知识
  • 原文地址:https://www.cnblogs.com/huwf/p/4273339.html
Copyright © 2011-2022 走看看