负载均衡,顾名思义,是一种将网络流量负载均衡到各个服务器上,以减少单个服务器压力、提升整体性能的技术。
在负载均衡中,一般由多台服务器以“对称”的方式,组成一个服务器集合,每台服务器等价的地位相同,都可以单独对外提供服务,而无须其他服务器的辅助。
通过负载均衡技术,外部发送来的请求,可均匀分配到“对称结构”中的某一台服务器上,而接收到请求的服务器可以独立地回应客户的请求。借助负载均衡,能够解决快速获取重要数据,解决大量并发访问服务器的问题。
面对“DDos攻击”或“大量用户访问、高并发请求”以及“海量数据”的场景,可以使用“高性能的Web服务器、大型数据库,读写速度更快的存储设备”来解决问题,又或者采用高效率的编程语言,如:“Go语言,Scala语言”。当单机容量达到极限时,我们需要考虑业务拆分和分布式部署,来解决大型网站“访问量大、并发量高以及海量数据”的问题。
从“单机网站”到“分布式网站”,很重要的区别是:业务拆分和分布式部署。将应用拆分后,部署到不同的机器上,以此实现大规模分布式系统。业务拆分和分布式部署,解决了从“集中到分布”的问题,然而每个部署的独立业务,还存在“单点问题”和“访问统一入口问题”。
为了解决“单点故障”,我们可以采取“冗余备份”的方式,将相同的应用,部署到多台服务器上。而解决“访问统一入口问题”,我们可以在服务器集群前端,增加“负载均衡设备”,实现流量分发。
负载均衡,意思是将负载(工作任务,访问请求)均衡分摊到多个操作单元(服务器、组件)上进行执行。负载均衡是解决“高性能、单点故障(高可用)、扩展性(水平伸缩)”的终极解决方案。
系统的扩展,可分为“纵向(垂直)扩展”和“横向(水平)扩展”。纵向扩展,是从单机的角度,通过增加硬件处理能力,比如“CPU处理能力、内存容量、磁盘容量”等,实现服务器处理能力的提升。纵向扩展,并不能解决大型分布式系统或网站的“大流量、高并发以及海量数据”问题。因此,需要采用“横向扩展”的方式,通过添加机器(服务器的数量)来满足大型网站应用服务的处理能力需求,比如:一台服务器不能满足应用需求,则增加两台或者多台服务器,共同承担访问压力。
总结一下,负载均衡的作用:
1.解决并发压力,提高应用处理性能(增加吞吐量,加强网络流量处理能力);
2.提供故障转移,实现高可用;
3.通过添加或减少服务器数量,来实现网站的伸缩性或扩展性;
4.安全防护(负载均衡设备上可进行“黑白名单”的添加设置,以此过滤掉那些恶意流量)。
虽然通过负载均衡技术,可以对系统的性能进行“横向(水平)扩展”,不仅能解决大型网站“访问量大、并发量高以及海量数据”的问题,还能在很大程度上缓解大规模、大流量的DDos攻击。但是这种方式,需要通过添加机器数量,以此实现系统性能的提高和强化,成本过高,并不适合一些中小型的企业。
防御DDos攻击,性价比最高的方式,还是选用云服务商的高防服务器进行防护。
亿速云为用户提供的高防服务器,具有“木马病毒检测、暴力破解防护、系统漏洞扫描”等基础防护功能,超大防护带宽 + 超强清洗能力,专门应对各类网站攻击行为,保障用户网站业务服务的正常稳定运行。亿速云在部署高防服务器的高防机房,接入了T级(1000G)超大防护带宽,单机(单台高防服务器)防御峰值最高可达数百G,并附有CC攻击的防御能力,可防御超大规模的DDos攻击和高密度的CC攻击,可精准识别多种类型的DDos攻击,并通过清洗过滤大规模的恶意流量,进而保障源站可用。