web负载均衡的理解和实现

摘要-导图

在这里插入图片描述

集群技术与负载均衡

负载均衡是集群技术的一种应用,谈负载均衡,首先我们需要了解集群是什么?

集群(Cluster):是一组独立的计算机系统构成一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信。应用程序可以通过网络共享内存进行消息传送,实现分布式计算机。

也就是说,集群是由多个计算机组成的一个系统,其中这每一个计算机被称为节点,节点之间通过局域网或者其他方式连接起来,彼此配合完成一个或者多个任务。从宏观上来讲,这个系统相当于一个计算机 。

集群分为三大类:

1.高性能计算集群

被使用在 计算机任务重的环境中,因为如果进程进行一些复杂的科学计算任务,全部运行在一个服务器上效率会非常的低,但是如果运行在高效能计算集群中,从效率上会优化很多呢!

2.负载均衡集群

被使用在 一些像访问频繁的网站这样任务繁重的环境中,负载均衡集群的目的是重新把任务分配给拥有资源的服务器去处理任务. 这个听起来和高性能集群没有区别,但是实际上是不一样的. 高性能集群中所有节点的计算都是为了完成同一个任务,而负载均衡集群需要兼顾任务分配以找到最有效的任务处理方式和处理任务这两件事.

3.高可用集群

这类集群的目的就是为了确保关键资源或服务最大限度的可用性,集群通过在每个节点安装特定软件来完成这点,该软件会负责监控每个集群节点和集群服务是否可用,如果节点不可用或者服务停止,集群需要立即知道并且确保尽可能快的重启节点.

说到这里,大家一定对集群有了一些了解,接下来我们来说一下集群中的负载均衡(Load Balance).
一般提到的负载均衡,是指实现负载均衡集群.负载均衡实现了横向扩展,避免纵向的升级换代.
本文中的web负载均衡,特指能够分担web请求的负载均衡技术.

what is the Load Balance in web?

任何的负载均衡技术都要想办法建议某种一对多的映射机制:

一个请求的入口映射到多个处理请求的阶段,说白了就是多个服务器一起处理一个复杂的事情,来降低某一个服务器的压力.
这种映象机制使得多个物理存在对外体现为一个虚拟的整体,对服务的请求者屏蔽了内部的结构.
采用不同的机制建立映射关系,可以形成不同的负载均衡技术,常见的三种有

  1. DNS轮询
  2. CDN
  3. IP负载均衡
    在这里插入图片描述

why should we use the Load Balance in web?

通常我们的项目开发都是在Tomcat上完成的,当然这样是有优点的,比如开发简单,部署简单,但是单个的Tomcat有时候就会有问题,它的容量是有峰值的,大家都知道,任何东西也都是有峰值的,我们的力气也是一样,所以,如果Tomcat出现了问题,那么这个那个项目就会出现故障,这是不可容忍的.
如图:单机Tomcat架构

在这里插入图片描述


优化:多应用服务器
多个Tomcat的ip轮询,解决单点故障问题,但是这样也有危害,就是应用服务器全部暴露在外网入口,不集中,不安全.
如图:多Tomcat DNS轮询架构

在这里插入图片描述


优化:采用负载均衡的算法(随机,轮询,加权,ip-hash,fair),解决了安全问题.
如图:负载均衡
在这里插入图片描述

how to realize the Load Balance in web?

  • DNS
    最简单的负载均衡方式,通过配置多条DNS A记录使得请求可以分配到不同的服务器。
    没有快速的健康检查机制,而且只支持WRR的调度策略导致负载很难“均衡”,通常用于要求不高的场景。并且DNS轮询方式直接将服务器的真实地址暴露给用户,不利于服务器安全。

  • CDN
    通过发布机制将内容同步到大量的缓存节点,并在DNS服务器上进行扩展,找到里用户最近的缓存节点作为服务提供节点。 通常使用CDN运营商的服务。目前国内的服务商很少,而且按流量计费,价格也比较昂贵。

  • IP负载均衡
    基于特定的TCP/IP技术实现,比如NAT、DR、Turning,可以使用硬件设备,也可以使用软件实现.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

草莓味少女vv

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值