HAProxy是一款反向代理服务器工具,通过它,可以实现负载均衡。它支持双机热备支持虚拟主机,但其配置简单,拥有非常不错的服务器健康检查功能,当其代理的后端服务器出现故障, HAProxy会自动将该服务器摘除,故障恢复后再自动将该服务器加入。新的1.3引入了frontend,backend,frontend根据任意HTTP请求头内容做规则匹配,然后把请求定向到相关的backend.

利用HAPorxy实现负载均衡

1. 利用HAProxy实现负载均衡
    192.168.169.137 (haproxy)———负载均衡———-(192.168.169.117;192.168.169.118)
    安装配置HAproxy
    cd /usr/local/
    wget http://haproxy.1wt.eu/download/1.3/src/haproxy-1.3.14.2.tar.gz
    tar zxvf haproxy-1.3.14.2.tar.gz
    mv   haproxy-1.3.14.2   haproxy
    cd haproxy
    make TARGET=linux26

2. 创建配置文件
    # vi haproxy.cfg
    global
           maxconn 5120
           chroot /usr/local/haproxy
           uid 99
           gid 99
           daemon
       quiet
           nbproc   2   #通过nbproc多设置几个haproxy并发进程,这样每个进程的task_queue相对就会短很多,性能自然就能提高不少
           #pidfile /var/run/haproxy-private.pid

defaults
           log     global
           mode http
           option   httplog
           option   dontlognull
           log 127.0.0.1 local3
           retries 3
           option redispatch
           maxconn 2000
           contimeout    5000
           clitimeout    50000
           srvtimeout    50000

listen webfarm 0.0.0.0:80
       mode http
       stats uri /haproxy-stats     #监控haproxy状态
       stats realm Haproxy\ statistics
       stats auth netseek:52netseek   #设置状态监控的用户名为netseek密码为52netseek
       balance roundrobin     #负载均衡算法
       cookie SERVERID insert indirect
       option httpclose #
       option forwardfor   #apache日志转发功能
       option httpchk HEAD /check.txt HTTP/1.0   #健康检测
    server app_bbs1 192.168.169.117:80 cookie app1inst1 check inter 2000 rise 2 fall 5
    server app_bbs2 192.168.169.118:80 cookie app1inst2 check inter 2000 rise 2 fall 5

syslog.conf里加一行
    local3.*       /var/log/haproxy.log

# touch /var/log/haproxy.log
    # chown haproxy:haproxy /var/log/haproxy.log
    # chmod u+x /var/log/haproxy.log

# tail –f /var/log/harpoxy.log 监控日志

# ./haproxy -f haproxy.cfg 启动服务.
    监控状态图示http://192.168.169.137/haproxy-stats ,输入用户名密码查看状态。

后端apache日志处理
    配置httpd.conf
    LogFormat “%{X-Forwarded-For}i %l %u %t \”%r\” %>s %b ” combined
           CustomLog /var/log/httpd/access_log combined

虚拟主机不记录检测日志:
    SetEnvIf Request_URI “^/check\.txt$” dontlog
    LogLevel warn
    ErrorLog /var/log/httpd/vhost_error.log
    CustomLog /var/log/httpd/vhost_access.log combined env=!dontlog
    相关介绍
    #./haproxy –help //haproxy相关命令参数介绍.
    haproxy   -f   <配置文件>   [-n 最大并发连接总数] [-N 每个侦听的最大并发数] [-d] [-D] [-q] [-V] [-c] [-p <pid文件>] [-s] [-l] [-dk]
       [-ds] [-de] [-dp] [-db] [-m <内存限制M>] [{-sf|-st} pidlist...]
       -d     前台,debug模式
       -D     daemon模式启动
       -q     安静模式,不输出信息
       -V     详细模式
       -c     对配置文件进行语法检查
       -s     显示统计数据
       -l     显示详细统计数据
       -dk 不使用kqueue
       -ds 不使用speculative epoll
       -de 不使用epoll
       -dp 不使用poll
       -db 禁用后台模式,程序跑在前台
       -sf <pidlist>
       程序启动后向pidlist里的进程发送FINISH信号,这个参数放在命令行的最后
       -st <pidlist>
       程序启动后向pidlist里的进程发送TERMINATE信号,这个参数放在命令行的最后

原文链接: http://linux.chinaitlab.com/serv...

Web高并发访问:用HAPorxy实现负载均衡相关推荐

  1. 高并发应用场景下的负载均衡与故障转移实践,AgileEAS.NET SOA 负载均衡介绍与实践...

    一.前言 AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平台.用于帮助中小型软件企业建立一条适合市 ...

  2. 手把手让你实现开源企业级web高并发解决方案

    本来想起个比较风趣点的标题,可想来思去,还是走常规路线,做一系列的手把手吧. 这样一来,便于我的老朋友们识别,也让我对这篇文章的粒度把我有个定位. 本篇博文主要介绍利用开源的解决方案,来为企业搭建we ...

  3. 如何才能做到网站高并发访问?

    原文:http://oldboy.blog.51cto.com/2561410/615721 如何才能做到网站高并发访问?--之我荐--老男孩 ############################ ...

  4. 实现网站的高并发访问

      高并发访问的核心原则其实就一句话"把所有的用户访问请求都尽量往前推". 如果把来访用户比作来犯的"敌人",我们一定要把他们挡在800里地以外,即不能让他们的 ...

  5. [转]高并发访问下避免对象缓存失效引发Dogpile效应

    避免Redis/Memcached缓存失效引发Dogpile效应 Redis/Memcached高并发访问下的缓存失效时可能产生Dogpile效应(Cache Stampede效应). 推荐阅读:高并 ...

  6. 视频直播系统开发:如何应对高并发访问?

    视频直播开发的挑战 随着移动互联网的快速普及,视频直播已经成为了新的社交媒体形式,也成为了一种新的商业模式.现在,越来越多的人开始使用视频直播来展示自己的生活和工作,同时,越来越多的企业开始将视频直播 ...

  7. 面试官:为什么单线程的Redis可以实现高并发访问

    背景 上回说到小枫在接受面试官的拷打,所幸第一个问题回答的还不错,因此面试官对于小枫的初步印象还行.我们接着来看看小枫是怎么和面试官继续过招的吧,他还能扛得住面试官几个连环炮呢? 面试官考察目的分析 ...

  8. 大规模集群下Hadoop NameNode如何承载每秒上千次的高并发访问

    目录 一.问题源起 二.HDFS优雅的解决方案 (1)分段加锁机制 + 内存双缓冲机制 (2)多线程并发吞吐量的百倍优化 (3)缓冲数据批量刷磁盘 + 网络的优化 四.总结 五.参考文章 一.问题源起 ...

  9. 蚂蚁围炉夜话回顾:从容应对数据高并发访问和一致性的挑战

    云原生(Cloud-Native)到底是什么?这个问题一直很难定义.CNCF技术监督委员会最近通过投票确定了其官方定义.如何使其弹性可扩展.稳定高可用.敏捷易维护等特性应用到现有创新场景? 蚂蚁金服在 ...

最新文章

  1. 论文解读 Combating Adversarial Misspellings with Robust Word Recognition
  2. 一个非常棒的jQuery 评分插件--好东西要分享
  3. Linux下载交通图片数据集CityScapes Dataset
  4. Linux 条件变量使用细节(为何调用 pthread_cond_wait 前加锁,函数内部解锁,返回时又加锁)
  5. 实例3:按部门统计工资人数
  6. 设python中有模块m_Python 模块
  7. Java开发Web Service的几种解决方案
  8. 拼多多:钟汉良出任“百亿补贴”星推官
  9. hadoop异常 java.io.IOException: Job status not available
  10. 【转发】 iphone开发随笔,有用的
  11. (转)ASP.NET 3.5 企业级开发
  12. 有关css3的一些问题
  13. java多线程系类:JUC线程池:02之线程池原理(一)
  14. 关于Mac系统中 vs code下使用markdown PDF 安装Chromium失败的解决办法
  15. 机器学习与医学应用基础(超星尔雅学习通)--答案
  16. 萤石云摄像头方向操控前端代码
  17. css 打造3D导航
  18. Java开发人员幽默外号,好听的外号绰号 好听幽默绰号大全
  19. 【SVL官方说明文档】
  20. 阜和SAP FICO模块课程

热门文章

  1. 4g模块注册上网 移远_Openwrt支持移远4G模块过程记录
  2. 求生之路 服务器优化参数,《求生之路2》服务器及网络参数优化指南
  3. python找出文本的位置和替换_python查找文本文档中特定间隔位置的字符并替换
  4. 初中数学503个必考知识点_初中数学无非就这146个必考知识点,全摸透,轻松应对考试!...
  5. 临沂大学3加4计算机专业,临沂大学2021年电子信息(计算机技术方向) 硕士研究生调剂工作细则...
  6. java多线程传值覆盖_Java 多线程传值的四种方法
  7. 使用PowerDesigner做数据库设计(一)
  8. 如何缩短visual studio行号的距离
  9. for循环优化_for 循环和while循环区别
  10. 蚁剑特征性信息修改简单过WAF