HaProxy 1.5 说明文档翻译
- 全局参数
chroot 选择一个空目录且无人使用,这样能够保证HAProxy的安全,减少被利用的可能。
cpu-map <all | odd | even | process_num> <cpu-set>
- 性能优化
maxpipes <number> haproxy使用pipe完成基于内核的tcp报文重组,此选项则用于设定每进程所允许使用的最大pipe个数;每个pipe会打开两个文件描述符,因此,“ulimit -n”自动计算时会根据需要调大此值;默认为maxconn/4,其通常会显得过大
noepoll 在Linux系统上禁用epoll机制
nokqueue 在BSE系统上禁用kqueue机制
nopoll 禁用poll机制
nosepoll 在Linux禁用启发式epoll机制
nosplice 禁止在Linux套接字上使用内核tcp重组,这会导致更多的recv/send系统调用;不过,在Linux 2.6.25-28系列的内核上,tcp重组功能有bug存在.
nogetaddrinfo 禁用getaddrinfo以解析名称(?name)
spread-checks <0..50,in percent> 有时候避免精准的健康检查时间间隔更加合理。
tune.bufsize <num> 设置buff大小。较小的值使得相同大小的内存中保存更多会话(并发连接),较大的值可以让应用拥有更大的缓存cookies。默认值是16384,可以在编译的时候更改。但强烈建议不去修改它。因为值太小会破坏某些服务(例如statistics),而值太大则会增加内存负担,可能造成内存溢出。至少同样条件下,该变量增加会导致全局并发连接会下降。若HTTP请求大于(tune.bufsize - tune.maxrewrite),haproxy会返回400错误(请求错误)。同样的,若HTTP回应大于该值,则返回502错误(gateway error)。
tune.chksize <num> 设置check buffer的大小。更大的数值有利于在更大的页面中差找到字符串和正则表达式,虽然这么做会增加内存和CPU负担。默认值16384,编译时可更改。虽然不建议修改,但有可能的话最好使用更好的checks。
√ tune.comp.maxlevel <num> 设置最大的压力等级。该等级影响CPU在压力过程中的利用率。每个会话使用该值来初始化压力算法。默认为1。
tune.http.cookielen <num> 设置最大缓存cookies的大小。这是“capture cookie xxx len yyy”所允许的最大值,任何比他大的值都会被缩减成这个值。有一点值得说明,不要把这个值设大了,因为所有的cookies都会被分配成这个值,无论它们配置的大小是多少(因为它们共享同一个pool)。这个值是按每个请求每个回应来算的,所以每个连接的内存分配大小是该值的两倍。没有特别声明时,该限制大小是63个字节,最好别修改。
tune.http.maxhdr <num> 设置请求头的最大值。当接收到的请求头大于该值(包含第一行)时,将会被拒绝,错误码是“400 bad request”;同样的,回应头过大时,会导致阻塞,错误码是“500 gateway
error”。默认值是101,考虑到Apache服务器大规模的使用该limit值,(该值)足够应付所有用途了。可以将它设大一些,暂时让一个有错误(buggy)的应用工作,直到错误被修复。请记住,每次会话的每个新头部都会消耗32bits的内存容量,所以最好别设太大了。
tune.idletimer <timeout> 设置haproxy查找空闲流(steams)占用空buffer的过程后的间隔时间。它通常用来修正一些包的大小(要么变得过大要么变得过小)。到底是使用splice()还是在SSL中发送大型buffer也是在该参数决定。<timeout>值是0到65535毫秒,值为0表示不会尝试检测空闲流(streams)。默认值为1000,差不多就是用户停顿时的检测(例如在点击之前读取页面)[此句没翻译好]。应该没理由改变该值。请参见tune.ssl.maxrecord。
tune.maxaccept <num> 设定haproxy进程内核调度运行时一次性可以接受的连接的个数。单进程模式中,较大的值可以带给高连接速率更好的性能表现,然而在多进程模式下,调节各个进程之间的平衡比增加性能更重要。这个值逐一应用于每个listener,因此一个listener绑定了多少个进程非常重要。该值默认为64,多进程模式下默认值是64除以listener绑定的进程数值的两倍。设定为-1可以完全禁止此限制。通常不需要修改这个值。
tune.maxpollevents <num> 设置调用轮训系统时进程同时最大的事件数量。这个值取决于操作系统。实验证明,其值小于200时可节约带宽,但会略微增大网络延迟,而大于200时会降低延迟,但会稍稍增加网络带宽的占用量。
tune.maxrewrite <num> 设定为首部重写或追加而预留的缓冲空间,建议使用1024左右的大小。在需要使用更大的空间时,haproxy会自动增加其值。
tune.rcvbuf.client <number>:定义在客户端内核套接字接收缓冲区的大小,单位为字节,建议不要调整此值。
tune.rcvbuf.server <number>:设定内核套接字中服务端或客户端接收缓冲的大小,单位为字节;强烈推荐使用默认值。
tune.sndbuf.client:定义在客户端内核套接字发送缓冲区的大小,单位为字节,建议不要调整此值。
tune.sndbuf.server:定义在服务端内核套接字发送缓冲区的大小,单位为字节,建议不要调整此值。
appsession
balance <algorithm> [ <arguments> ] algorithm 有如下几个选项:1. roundrobin 轮询 动态,运行过程中修改weight会实施生效。最多只能存在4095个活跃server;
2. static-rr 静态轮询 活跃server无上限;
3. leastconn 最少连接 当前集群中处于最少连接状态的服务器将获取新连接。适合长时间会话保持如LDAP、SQL、TSE,不适合短期 会话如http;
bind [<address>]:<port_range> [, ...] [param*]
bind /<path> [, ...] [param*]
bind-process [ all | odd | even | <number 1-64>[-<number 1-64>] ] ... 设定能处理事件的进程个数。
block { if | unless } <condition>
HaProxy 1.5 说明文档翻译相关推荐
- TiDB 官方设计文档翻译(二)
这个系列共三篇译文: TiDB 官方设计文档翻译(一) TiDB 官方设计文档翻译(二) TiDB 官方设计文档翻译(三) 原文: https://pingcap.github.io/blog ...
- Haproxy Nginx cluster构建
-----client---------haproxy-------nginx1---------nginx2------ 192.168.1.250 192.168.1.1 192.168.1.10 ...
- redis sentinel集群配置及haproxy配置
ip分布情况: sentinel-1/redis 主 10.11.11.5 sentinel-2/redis 从 10.11.11.7 sentinel-3/redis 从 10.11.11.8 ha ...
- 负载均衡工具haproxy安装,配置,使用
一,什么是haproxy HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代 理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy特别适用于那些负载特大的web站点 ...
- 千万级并发HAproxy均衡负载系统介绍
Haproxy介绍及其定位 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.根据官方数据,其最高极限支持10G的并发. HA ...
- 【iOS官方文档翻译】iOS蓝牙的基本概念
之前写了[iOS官方文档翻译]iOS的蓝牙连接.数据接收及发送一文,介绍了怎样进行蓝牙通讯,但是很多基本概念没有进行解释,看起来可能有点吃力,所以现在再翻译一篇苹果对官方蓝牙4.0一些基本概念介绍的文 ...
- Linux自学笔记——haproxy
HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠地一套解决方案.HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持 ...
- 烂泥:haproxy学习之手机规则匹配
2019独角兽企业重金招聘Python工程师标准>>> 本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb. 今天我们来介 ...
- haproxy ssl_我们如何微调HAProxy以实现2,000,000个并发SSL连接
haproxy ssl by Sachin Malhotra 由Sachin Malhotra 我们如何微调HAProxy以实现2,000,000个并发SSL连接 (How we fine-tuned ...
最新文章
- 你需要的大概不是 enumerated
- 并查集 poj1182
- 内连接查询的重点分析
- java bitmap jar_Java面试中常用的BitMap代码
- Go语言编程:Go语言实现快速排序算法
- 【Leetcode】打家劫舍 I and 打家劫舍 II(动态规划)PYTHON
- android布局配置
- win10的文件夹(文件资源管理器)卡住了
- 三阶魔方CFOP cross总结
- 录音文件怎么转换成文字呢?
- python判断素数程序_python判断素数程序_Python程序检查素数
- 反复横跳的瞄准线!从向量计算说起!基于射线检测的实现!Cocos Creator!
- 三角形面积计算器--C语言
- 设置标题栏背景色,背景色是自定义背景色
- SSL: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch
- java空指针异常是什么、怎么发生、如何处理
- 淘集集商家入驻?淘集集商家入驻的步骤?
- 海南三亚游记2022-2023跨年
- 天梭手表Tissot手表更换电池的方法
- 条件计数:COUNTIF、COUNTIFS函数