当前位置:首页 > 资讯 > 正文

haproxy的简单配置与应用

haproxy的简单配置与应用


haproxy是跟nginx相似的一个负载均衡产品,它们有如下的特点:
二者现在都能支持http/tcp/udp的负载均衡,nginx的采用类似编程语言的配置,用文档结构表示配置关系,看起来比较清晰,
haproxy的配置有点像网络设备,定义和引用,有时候搞清一个逻辑需要上下来回翻看。
nginx是master-workers多进程,每个进程单线程,多核CPU能充分利用;
haproxy是多线程,单进程就能实现超高性能,虽然haproxy也能多进程,但是网上资料多认为开了多进程也不能提升性能,不建议多进程跑。
即使做反向代理nginx性能略低于haproxy,但实际两者性能都超高,性能问题几乎不用担心。
各自特点如下:
nginx:
使用花括号,层级化的配置文件结构
除了自带的map、if语句可以实现简单逻辑,原生支持js/perl脚本,非官方支持lua
除了做负载均衡还可以做静态web服务器,缓存服务器(Haproxy不行)
模块化,按需编译,因为模块化,所以可选很多第三方扩展模块
开源版本只有基础功能,更多的功能要折腾第三方模块,或者花钱买官方扩展版的nginx plus
haproxy:
定义和引用,命令式的配置结构
支持acl,但不支持其他脚本语言(评论里有人说现在可以支持了)
做负载均衡性能比nginx好
有一个状态统计页面
官方支持会话保持、健康检查等(nginx开源版不带)
基础功能覆盖要比nginx开源版好,但是不易扩展,缺乏第三方资源。