
# 负载均衡
负载均衡是一种流量分发控制服务，可以将访问流量根据分配策略分发到后端多台服务器。负载均衡可以通过流量分发扩展应用系统对外的服务能力，同时通过消除单点故障提升应用系统的可用性。
#### 为什么需要负载均衡
在现代互联网和企业应用中，用户经常面临高流量和高并发请求的挑战，例如在大型电商平台的促销活动期间，网站访问量激增，服务器可能会因为负载过重而响应缓慢甚至崩溃。
这种情况下，传统的单服务器架构已经无法满足需求，而负载均衡技术提供了一个有效的解决方案。通过在多个服务器之间智能分配请求，负载均衡不仅能够显著提高系统的可用性和性能，还能确保在某个服务器故障时，其他服务器可以无缝接管，从而避免服务中断。
负载均衡技术不仅解决了高流量带来的性能瓶颈和可靠性问题，还为企业提供了更高的灵活性和成本效益。企业可以根据实际需求动态增加或减少服务器，灵活应对不同的负载情况。此外，负载均衡还支持会话保持和数据一致性，确保用户在访问应用时获得一致的体验。通过这些优势，负载均衡技术不仅提升了用户体验，还为企业带来了更多的市场机会，使其能够更好地抓住市场变化，提升竞争力。
#### 负载均衡的优势是什么
- **高可用性**：负载均衡通过在多个服务器之间分配请求，确保即使某个服务器出现故障，其他服务器仍能继续处理请求，提高系统的整体可用性。
- **性能优化**：负载均衡根据服务器的当前负载情况，智能分配请求，确保每个服务器的资源得到充分利用，提升系统的整体性能。
- **水平扩展**：负载均衡支持动态增加或减少服务器，企业可以根据实际需求灵活调整资源，应对不同的负载情况。
- **会话保持**：负载均衡支持会话保持功能，确保同一个客户端的请求始终分配到同一个服务器，保持会话的一致性和用户体验。
- **故障检测**：负载均衡实时检测服务器的健康状态，自动将请求重定向到健康的服务器，减少服务中断的风险。
 
#### 负载均衡的使用场景
- **为高访问量业务进行流量分发**：对于业务量访问较大的业务，可以通过负载均衡设置相应的分配策略，将访问量均匀地分到多个后端服务器处理。例如大型门户网站，移动应用市场等。同时您还可以开启会话保持功能，保证同一个客户请求转发到同一个后端服务器，从而提升访问效率。
- **为潮汐业务弹性分发流量**：对于存在潮汐效应的业务，结合弹性伸缩服务，随着业务量的增长和收缩，弹性伸缩服务自动增加或者减少的ECS（Elastic Cloud Server）实例，可以自动添加到负载均衡的后端服务器组或者从负载均衡的后端服务器组移除。负载均衡会根据流量分发、健康检查等策略灵活使用ECS实例资源，在资源弹性的基础上大大提高资源可用性。例如电商的"双11"、"双12"、"618"等大型促销活动，业务的访问量短时间迅速增长，且只持续短暂的几天甚至几小时。使用负载均衡及弹性伸缩能最大限度地节省IT成本。
- **消除单点故障**：对可靠性有较高要求的业务，可以为负载均衡添加多个后端服务器。负载均衡通过健康检查及时发现并屏蔽有故障的服务器，并将流量转发到其他正常运行的后端服务器，确保业务不中断。例如官网，计费业务，Web业务等。
- **跨可用区特性实现业务容灾部署**：对可靠性和容灾有很高要求的业务，负载均衡可将流量跨可用区进行分发，建立实时的业务容灾部署。即使出现某个可用区网络故障，负载均衡仍可将流量转发到其他可用区的后端服务器进行处理。例如银行业务，警务业务，大型应用系统等。
 
#### 负载均衡的工作原理
负载均衡通过接收用户请求，解析并选择健康的后端服务器，根据预设算法分配访问请求，确保系统高性能和高可用性，同时通过会话保持功能确保用户会话的一致性。
- **客户端发起请求**：请求通常由客户端发起，通过网络传输到负载均衡实例。
- **接收并解析请求**：负载均衡实例通过监听器接收并解析请求，识别访问目标、请求类型和客户端信息。这一过程确保负载均衡器能够准确理解每个请求，为后续的调度决策提供依据。监听器的作用是确保请求被及时接收和处理，避免遗漏。
- **请求分发**：负载均衡实例根据预设的算法（如轮询、最少连接、IP哈希等），将请求精准分配至目标服务器。如果需要，系统还会启用会话保持功能，确保同一客户端的请求始终路由至同一服务器。这一系列机制有效避免了单点过载，保障了请求分配的合理性与高效性。
- **处理请求并返回响应**：后端服务器处理请求并返回响应，负载均衡实例再将结果返回给客户端。
图1负载均衡的工作原理   
![](https://support.huaweicloud.com/productdesc-elb/zh-cn_image_0000002592544842.png "点击放大")
#### 负载均衡的分类
按工作的OSI网络层级，负载均衡可分为网络型负载均衡和应用型负载均衡：
- 网络型负载均衡：四层负载均衡，工作在传输层，基于IP地址和端口进行流量路由。适用于TCP/UDP/TLS流量的访问请求，提供传输层的基础路由功能。不解析应用内容，转发效率高。能够处理大规模网络流量，确保高可靠性和性能。
- 应用型负载均衡：七层负载均衡，工作在应用层，适用于HTTP和HTTPS流量的访问请求，支持细粒度的请求处理，提供应用层基于请求内容的高级路由功能。可根据请求的内容将流量转发到不同的后端服务器，提供更灵活和智能的流量管理功能。
 
#### 与ELB相关的操作和特性：
华为云根据用户的实际需求和预算，提供[独享型负载均衡器](https://support.huaweicloud.com/usermanual-elb/elb_lb_000006.html)和[共享型负载均衡器](https://support.huaweicloud.com/usermanual-elb/zh-cn_topic_0015479967.html)。独享型负载均衡器资源独享，性能和可靠性更高，适合大型企业、关键业务应用和高流量网站。共享型负载均衡器资源由多个用户共享，成本较低，适合中小企业和中小型网站。通过这些步骤，您可以快速购买和配置一个高效、安全的负载均衡实例，提升系统的性能和可用性。
首先，您可以[创建VPC](https://support.huaweicloud.com/usermanual-vpc/zh-cn_topic_0013935842.html)和[云服务器ECS](https://support.huaweicloud.com/usermanual-ecs/ecs_03_7012.html)，这为您的应用提供隔离且安全的运行环境。接着通过购买负载均衡、配置监听器、配置后端服务器组及健康检查，完成ELB的创建。
为确保负载均衡器和后端服务器的安全，还需配置[安全组规则](https://support.huaweicloud.com/usermanual-elb/elb_ug_hd_0007.html)。
在使用ELB的过程中，为了更好地掌握ELB的流量负载情况，华为云提供了[监控负载均衡服务](https://support.huaweicloud.com/usermanual-elb/elb_ug_jk_0005.html)。通过云监控服务用户可以执行自动实时监控、告警和通知操作，帮助用户实时掌握通过ELB负载的运行情况。
