海量运维常用技术之--HAProxy网站负载均衡应用

简介:

近期朋友刘鑫的网站成功上线并运营了,PV达到了亿级/日的访问量,最前端用的HAProxy+Keepalived双机作的负载均衡器/反向代理,整个网站非常稳定;这让我更坚定了HAProxy+Keepalived作为Web最前端的负载均衡器网站架构设计方案,在这里我也有一点要跟大家申明下:很多朋友担心软件级别的负载均衡在高并发流量冲击下的稳定情况,事实是我们通过成功上线的许多网站发现,HAProxy作为前端的负载均衡的稳定性是非常好的,宕机的可能性微乎其微,由于HAProxy我们多用于7层负载均衡,在大流量的冲击下,发现确实对CPU有一定消耗,这里推荐大家用DELL 710 | 910服务器。另外,HAProxy不仅仅只能做七层负载均衡,它还可以做四层负载均衡的,由于它跟LVS一样,仅仅只是做为负载均衡 专用,所以在转发及处理流量的效率上,肯定是优于Nginx的。现在网上LVS/Nginx的资料太多了,所以大家的关注度自然也高,其实HAProxy也是很不错的,所以网站有负载均衡需求的朋友,不妨考虑试用下HAProxy。双机高可用方案建议大家采用HAProxy+Keepalived。


LVS现在几乎成了负载均衡的代名词,其作用和功能不断的被神化,但LVS有这么神奇吗?前段时间负责升级的一个电子商务网站,由于业务和监控的需求,后端的每台Web服务器上面都有十几条静态路由再加两个VLAN,LVS就满足不了需求了,而Nginx/HAProxy就没什么问题,而作为负载转发器,HAproxy的性能是优行NGINX,另外大家都知道,由于ARP抑制的原因,LVS的部署和维护并不是太简单,而HAProxy/Nginx就不存在这些问题。由于LVS本身还有些缺点,淘宝的技术一直在完善它,2012年有兴参加了淘宝的技术嘉年华,听取了吴佳明(淘宝普空)先生关于对LVS的改进讲座,其中提到了LVS的FULLNAT模式,它是一种新的转发模式,实现LVS后端的真实物理服务器间跨VLAN通讯,并且IN/OUT流量都经过LVS,另外,新的FULLNAT在防御DDOS攻击方面也有很大改进,有兴趣的朋友可以关注吴佳明先生的PPT


再拿另外一个工作实例来说下,另外一个广告类型的网站,我负责改进其整体架构设计,由于要保证整个网站的高可用,公司老总授意用F5来做为LB,但经过仔细分析,我发现网站初期流量并不是特别大,日PV不过百万,而且网站主要是白天负责开放,监控人员也很多(运维和运营人员白天基本都在),所以就用DNS轮询的方式来处理了,而且事后发现效果也比较理想,达到了前期节约成本的目的,而且后期规划中我也坚定的选择了HAProxy,放弃F5和LVS。


现在HAProxy的算法也非常多,并不比专业的F5/LVS算法少,常用的算法有如下8种:

一、roundrobin,表示简单的轮询,建议关注;

二、static-rr,表示根据权重,建议关注;

三、leastconn,表示最少连接者先处理,建议关注;

四、source,表示根据请求源IP,跟Nginx的ip_hash算法相似,建议关注;

五、uri,表示根据请求的URI;

六、url_param,表示根据请求的URl参数;

七、hdr(name),表示根据HTTP请求头来锁定每一次HTTP请求;

八、rdp-cookie(name),表示根据据cookie(name)来锁定并哈希每一次TCP请求。

现在新版的HAProxy也越来越强了,开始支持https了,建议关注HAProxy官方网站


撰写此文的目的是了推广HAProxy的应用,做技术的人不应该人云亦云,道听途说,应该以自己的线上环境和数据来说话,来做为自己的论理根据,也欢迎大家通过我的博客和微博地址来一起交流HAProxy在平时线上的应用





本文转自 抚琴煮酒 51CTO博客,原文链接:http://blog.51cto.com/yuhongchun/1281056,如需转载请自行联系原作者

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
目录
相关文章
|
10月前
|
传感器 边缘计算 运维
AR 虚实叠加技术在工业设备运维中的实现流程方案
AR技术通过虚实信息融合,实现工业设备参数可视化、故障立体化、操作直观化,提升运维效率与精度。结合物联网与数字孪生,打造智能运维新范式。
|
8月前
|
数据采集 运维 监控
爬虫与自动化技术深度解析:从数据采集到智能运维的完整实战指南
本文系统解析爬虫与自动化核心技术,涵盖HTTP请求、数据解析、分布式架构及反爬策略,结合Scrapy、Selenium等框架实战,助力构建高效、稳定、合规的数据采集系统。
1229 62
爬虫与自动化技术深度解析:从数据采集到智能运维的完整实战指南
|
10月前
|
传感器 人工智能 运维
AR技术电力智慧运维白皮书
AR技术正重塑电力运维模式,通过“端-边-云”协同系统,实现设备可视化、远程协作与智能预警,大幅提升效率与安全性,推动电力行业迈入智能运维新时代。
|
10月前
|
运维 监控 jenkins
企业服务交付慢?运维技术其实就是“加速器”
企业服务交付慢?运维技术其实就是“加速器”
215 5
|
弹性计算 负载均衡 网络协议
阿里云SLB深度解析:从流量分发到架构优化的技术实践
本文深入探讨了阿里云负载均衡服务(SLB)的核心技术与应用场景,从流量分配到架构创新全面解析其价值。SLB不仅是简单的流量分发工具,更是支撑高并发、保障系统稳定性的智能中枢。文章涵盖四层与七层负载均衡原理、弹性伸缩引擎、智能DNS解析等核心技术,并结合电商大促、微服务灰度发布等实战场景提供实施指南。同时,针对性能调优与安全防护,分享连接复用优化、DDoS防御及零信任架构集成的实践经验,助力企业构建面向未来的弹性架构。
953 76
|
12月前
|
缓存 负载均衡 网络协议
电商API接口性能优化技术揭秘:缓存策略与负载均衡详解
电商API接口性能优化是提升系统稳定性和用户体验的关键。本文聚焦缓存策略与负载均衡两大核心,详解其在电商业务中的实践。缓存策略涵盖本地、分布式及CDN缓存,通过全量或部分缓存设计和一致性维护,减少后端压力;负载均衡则利用反向代理、DNS轮询等技术,结合动态调整与冗余部署,提高吞吐量与可用性。文中引用大型及跨境电商平台案例,展示优化效果,强调持续监控与迭代的重要性,为电商企业提供了切实可行的性能优化路径。
|
机器学习/深度学习 运维 自然语言处理
大模型技术在运维中的知识管理革命
大模型技术在运维中的知识管理革命
786 81
|
机器学习/深度学习 运维 自然语言处理
大模型也能当“运维警察”?——大模型技术在异常检测中的应用
大模型也能当“运维警察”?——大模型技术在异常检测中的应用
2316 13
|
弹性计算 运维 Ubuntu
使用阿里云服务器自动搭建WordPress网站流程,超简单by系统运维管理OOS
本教程介绍如何使用阿里云服务器(ECS)和系统运维管理OOS自动搭建WordPress网站,支持Ubuntu、CentOS及Alibaba Cloud Linux等操作系统。前提条件包括ECS实例处于运行中、有公网IP且安全组已开启80端口。安装步骤简单:进入ECS快速购买控制台选择预装WordPress,确认下单后通过管理控制台查看实例详情并开放安全组端口。最后,通过实例公网IP访问,出现WordPress登录页即表示安装成功。
|
边缘计算 运维 Cloud Native
云原生技术的崛起:重新定义软件开发与运维
云原生技术的崛起:重新定义软件开发与运维