常见的web负载均衡方法总结

Web负载均衡的方法有很多,下面介绍几种常见的负载均衡方法。

1.用户手动选择方法

这是一种较为古老的方式。通过在主站首页入口提供不同线路、不同服务器连接的方式,来实现负载均衡。这种方式在一些提供下载的网站中比较常见。

2.DNS轮询方式

大多域名注册商都支持对同一主机名添加多条A记录,这就是DNS轮询,DNS服务器将解析骑牛按照A记录的顺序,随机分配到不同的IP上,这样就完成了简单的负载均衡。

DNS轮询的成本非常低,在一些不重要的服务上,经常被使用。

下图为enom的域名Web管理界面,这里我们为api.bz域名添加一个二级域名ntp.api.bz(主机名为ntp),并为该域名添加多条A记录,让其DNS轮询7个IP,用7台服务器来做负载均衡。

添加完成后,我们用Linux下的dig命令查看ntp.api.bz域名的域名解析情况

[[email protected] ~]# dig ntp.api.bz

; <<>> DiG 9.9.4-RedHat-9.9.4-61.el7 <<>> test1.testa.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33762
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 19

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;test1.testa.com.                 IN      A

;; ANSWER SECTION:
test1.testa.com.          600     IN      A       201.17.07.223

;; AUTHORITY SECTION:
testa.com.             172761  IN      NS      vip2.testdns.com.
testa.com.             172761  IN      NS      vip1.testdns.com.

;; ADDITIONAL SECTION:
vip1.testdns.com.        475     IN      A       101.19.44.101
vip1.testdns.com.        475     IN      A       110.215.1.1
vip1.testdns.com.        475     IN      A       110.215.28.103
vip1.testdns.com.        475     IN      A       110.215.208.11
vip1.testdns.com.        475     IN      A       13.1.102.10
vip1.testdns.com.        475     IN      A       42.66.22.111
vip1.testdns.com.        475     IN      A       101.15.10.103

;; Query time: 15 msec
;; SERVER: 192.168.0.88#13(192.168.0.2)
;; WHEN: Mon Jul 06 21:14:12 CST 2015
;; MSG SIZE  rcvd: 391

虽然DNS轮询的成本非常低,但是,DNS负载均衡存在两个明显的缺点

(1).可靠性低

假设一个域名DNS轮询多台服务器,如果其中的一台服务器发生故障,那么所有的访问该服务器的请求将不会有所回应,这是任何人都不愿意看到的。即使从DNS中去掉该服务器的IP,但在Internet上,各地区电信、网通等宽带接入商将众多的DNS存放在缓存中,以节省访问时间,DNS记录全部生效需要几个小时,甚至更久。所以,尽管DNS轮流在一定程度上解决了负载均衡问题,但是却存在可靠性不高的缺点。

(2).负载分配不均衡

DNS负载均衡采用的是最简单的轮询负载算法,不能区分服务器的差异,不能反映服务器的当前运行状态,不能做到为性能较好的服务器多分配请求,甚至会出现客户请求集中在某一台服务器上的情况DNS服务器是按照一定的层次结构组织的,本地DNS服务器会缓冲已解析的域名到IP地址的映射,这会导致使用该DNS服务器的用户在一段时间内访问的是同一台Web服务器,导致Web服务器间的负载不均衡。

此外,用户本地计算机也会缓存已解析的域名到IP地址的映射。当多个用户计算机都缓存了某域名到IP地址的映射时,而这些用户继续访问该域名下的网页,这是也会导致不同Web服务器件的负载分配不均衡。
负载不均衡可能导致的后果有:某几台服务器负荷很低,而另几台服务器负荷很高、处理缓慢;配置高的服务器分配到的请求少,而配置覅的服务器分配的请求多。

因此,DNS轮询方式仅适用于一些可靠性要求不高的服务器集群,例如:图片服务器群、纯静态网页服务器集群等。

3.四/七层负载均衡设备

常见的四/七层负载均衡设备:

1.硬件四/七层负载均衡交换机

常见的如F5 BIG-IP、Foundry等产品,采用F5的公司有:新浪、百度、雅虎、猫扑、搜狐、慧聪网等等。

2.软件四层负载均衡

代表有LVS(Linux Virtual Server).

3.软件七层负载均衡

大多基于HTTP反向代理,代表作有Nginx

4.多线多地区智能DNS解析与混合负载均衡方式

以新浪首页为例,负载均衡同时用到了“多线多地区智能DNS解析、DNS轮询、四/七层负载均衡交换机”等技术。智能DNS解析能够根据用户本地设置的DNS服务器线路和地区,将对同一个域名请求解析到不同的IP上。

原文地址:https://www.cnblogs.com/shamo89/p/9320533.html

时间: 2024-10-14 11:00:02

常见的web负载均衡方法总结的相关文章

Web负载均衡实现方式(转)

Reference [1] https://www.cnblogs.com/eric-qin/p/7238278.html 负载均衡(Load Balance)是集群技术(Cluster)的一种应用.负载均衡可以将工作任务分摊到多个处理单元,从而提高并发处理能力.目前最常见的负载均衡应用是Web负载均衡.根据实现的原理不同,常见的web负载均衡技术包括:DNS轮询.IP负载均衡和CDN.其中IP负载均衡可以使用硬件设备或软件方式来实现. 什么是web负载均衡 服务器集群(Cluster)使得多个

Web负载均衡的几种方式

Web负载均衡的几种实现方式 摘要:负载均衡(Load Balance)是集群技术(Cluster)的一种应用.负载均衡可以将工作任务分摊到多个处理单元,从而提高并发处理能力.目前最常见的负载均衡应用是Web负载均衡.根据实现的原理不同,常见的web负载均衡技术包括:DNS轮询.IP负载均衡和CDN.其中IP负载均衡可以使用硬件设备或软件方式来实现. 什么是web负载均衡服务器集群(Cluster)使得多个服务器节点能够协同工作,根据目的的不同,服务器集群可以分为: 高性能集群:将单个重负载的请

web负载均衡整理

参考:http://www.cnblogs.com/lovingprince/archive/2008/11/13/2166350.html http://www.cnblogs.com/lovingprince/archive/2008/11/13/2166349.html http://news.cnblogs.com/n/208124/ http://network.51cto.com/art/201108/281452.htm 负载均衡的概念 Web集群是由多个同时运行同一个web应用的

Haproxy+keepalied实现web负载均衡

一.实验拓扑图: keepalived: keepalived的主要目的是为ipvs提供高可用性,因此keepalived除了能够实现资源转移之外,自身能够调用ipvsadm命令来生成规则,而且还能够检测后端Rserver服务的健康状态检测.keepalived自身就是一个服务 ,启动之后工作在两个节点上(可以是多个节点),一个为当前活动节点,一个为备用节点简称为一主(master)一备(backup).master会不时的向backup传递通告信息(这种通告信息机制是基于vrrp协议),备用节

Web负载均衡的几种实现方式

参考帖子: Web负载均衡的几种实现方式 大型网站架构系列:负载均衡详解(上) DNS 原理入门 解决nginx负载均衡的session共享问题 什么是消息队列

RedHat 7配置HAProxy实现Web负载均衡

本文将简单介绍使用HAProxy实现web负载均衡,主要内容包括基于权重的轮询.为HAProxy配置https.配置http重定向为https.配置HAProxy使用独立日志. 一.测试环境 HAProxy: 主机名:RH7-HAProxy IP地址:192.168.10.20 操作系统:Red Hat Enterprise Linux Server release 7.2 (Maipo)最小化安装 防火墙与SELinux:关闭 安装的服务:HAProxy-1.5.14 WEB01: 主机名:R

企业级web负载均衡完美架构

转载:揭秘企业级web负载均衡完美架构(图) 2010-07-06 15:16 抚琴煮酒 51CTO.com 字号:T | T 相信很多朋友对企业级的负载均衡高可用实例非常感兴趣,此篇文章根据成熟的线上环境而写,旨在帮助大家迅速架构一个企业级的负载均衡高可用的web环境. AD:WOT2014课程推荐:实战MSA:用开源软件搭建微服务系统 [51CTO.com独家特稿]相信很多朋友对企业级的负载均衡高可用实例非常感兴趣,此篇文章根据成熟的线上环境而写,旨在帮助大家迅速架构一个企业级的负载均衡高可

NFS共享MySQL使用DNS轮询实现Web负载均衡

NFS共享MySQL使用DNS轮询实现Web负载均衡 前言: 今天学习了NFS,遂结合前面学习的LAMP+Bind做一个实验,实现两台Web服务器采用同一个MySQL数据库和相同的网页文件,对LAMP和Bind不了解的可以去查看我以前写的博客: AnyISalIn的文章 实验拓扑图 实验环境 主机名 IP地址 实现 storage.anyisalin.com 192.168.2.5 NFS ns.anyisalin.com 192.168.2.2 dns,MySQL www.anyisalin.

[转]Haproxy 1.5.0 正式发布,Web 负载均衡

From : http://www.oschina.net/news/53070/haproxy-1-5-0 经过 4 年的不懈努力,HAProxy 1.5.0 终于发布了! 相对于 1.4 版本来说,1.5 版本包括了许多新特性和性能改进: 支持 SNI/NPN/ALPN 和 OCSP stapling 的原生 SSL: 支持 IPv6 和 UNIX sockets: full HTTP keep-alive for better support of NTLM and improved ef