Haproxy搭建Web群集

一.Haproxy概述

1.常用的Web集群调度器

2.Haproxy作用

HAProxy是可提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,是免费、快速并且可靠

的一种解决方案。HAProxy非常适用于并发大(并发达1w以上)web站点,这些站点通常又需要会

话保持或七层处理。HAProxy的运行模式使得它可以很简单安全的整合至当前的架构中,同时可以

保护web服务器不被暴露到网络上

3.Haproxy主要特性

  • 可靠性和稳定性非常好,可以与硬件级的F5负载均衡设备相媲美
  • 最高可以同时维护40000-50000个并发连接,单位时间内处理的最大请求数为20000个,最大处理能力可达10Git/s
  • 支持多达8种负载均衡算法
  • 支持Session会话保持,Cookie的引导
  • 支持通过获取指定的url来检测后端服务器的状态
  • 支持虚机主机功能,从而实现web负载均衡更加灵活
  • 支持连接拒绝、全透明代理等独特的功能
  • 拥有强大的ACL支持,用于访问控制
  • 支持TCP协议的负载均衡转发(支持7层代理、实现动静分离)
  • 支持客户端的keepalive功能,减少客户端与haproxy的多次三次握手导致资源浪费,让多个请求在一个tcp连接中完成

4.Haproxy调度算法

  • roundrobin 轮询
  • static-rr 加权轮询
  • leastconn 最小连接
  • source 根据源地址做哈希
  • uri 根据请求的URI地址做哈希
  • url_param 根据请求的URL路径里传递的参数做哈希
  • hdr(NAME) 根据请求头的字段做哈希
  • rdp-cookie(NAME) 根据cookie里的字段做哈希

5.Haproxy提供了3种实现会话保持的方式

源地址hash

balance source

设置cookie

cookie HA_STICKY_dy insert indirect nocache

server tomcat.inst1 192.168.80.101:8080 cookie tomcat.inst1

会话粘性表stick-table

stick-table type ip size 5k expire 1m

stick on src

二.LVS、Nginx、HAproxy的区别

负载均衡转发性能

硬件负载均衡 F5 \> LVS 最好 > HAProxy 其次 > Nginx 弱于其它两款

支持的代理类型

  • LVS是基于Linux内核实现的软负载均衡,只支持四层代理转发,且不支持正则表达式处理,不能做动静分离
  • Nginx、HAProxy都是基于应用层实现的软负载均衡,都支持四层和七层代理转发,且也支持正则表达式处理,能做动静分离

配置维护

  • LVS 实施配置复杂,维护成本相对较高
  • Nginx、HAProxy 配置简单,维护成本较低

健康检查

  • LVS可以配合Keepalived实现高可用,以及实现TCP端口或HTTP URL方式的健康检查
  • Nginx默认只支持被动方式的TCP端口健康检查,主动健康检查需要安装第三方模块nginx_upstream_check_module后才能支持
  • HAProxy默认就支持主动的TCP端口、HTTP URL、脚本等方式的健康检查

三.Haproxy搭建 Web 群集

(更新中。。。。)

相关推荐
@兽血沸腾4 分钟前
Windows系统安装Jenkins部署应用至远程Windows服务器操作指南
运维·服务器·jenkins
讯捷蓝达5 小时前
戴尔R720xd服务器卡死在 “Configuring Memory...Done“,换了内存还是卡?问题根本不在内存
运维·服务器
数字新视界8 小时前
动环监控信创适配在智能机房管理中的应用价值与未来展望
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
爱和冰阔落8 小时前
【Linux网络】TCP 服务器如何并发处理多个客户端?从 fork、僵尸进程到双重 fork
linux·运维·服务器·网络
lisanmengmeng8 小时前
alertmanger 标签 rules 打上分组标签
linux·运维·服务器
Android系统攻城狮9 小时前
Linux FFmpeg深度解析之av_write_frame调用流程与实战(三十三)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
上火的金鱼妹9 小时前
k8s生产实际问题排查(网关,数据库读写等)
运维·服务器
孙克旭_9 小时前
k8s基础组件与创建资源
运维·docker·容器·kubernetes
孙克旭_10 小时前
云原生基础之Containerd容器运行时
运维·云原生
分布式存储与RustFS10 小时前
RustFS 自建对象存储实战目录:110 篇按场景分类(持续更新)
运维·云原生·开源·对象存储·分布式存储·s3·性能基准