【高并发解决方案】9、大流量解决方案

方案一、反向代理负载均衡

常用的nginx。位于网络7层之上的http层,针对http应用做一些分流的策略。

nginx单台机器可以承受2w到3w的并发量。

任何一台服务器都有一个极限,一旦访问量到了这个点,性能会急剧恶化。最大并发5W,实际上可能3-4W就会引发性能恶化,然后拖着到极限,最后宕机。

方案二、DNS负载均衡

随着并发流量的增加,反向代理已经不能满足需要。需要进行DNS负载均衡到nginx集群中。

DNS负责提供域名解析服务,当访问某个站点时,实际上首先需要通过该站点域名的DNS服务器来获取域名指向的IP地址,在这一过程中,DNS服务器完成了域名到IP地址的映射,同样,这样映射也可以是一对多的,这时候,DNS服务器便充当了负载均衡调度器

作为调度器,DNS服务器本身的性能几乎不用担心。因为DNS记录可以被用户浏览器或者互联网接入服务商的各级DNS服务器缓存,只有当缓存过期后才会重新向域名的DNS服务器请求解析。也说是DNS不存在http的吞吐率限制,理论上可以无限增加实际服务器的数量。

方案三、IP负载均衡(LVS-NAT)

NAT服务器:它工作在传输层(第四层),它可以修改发送来的IP数据包,将数据包的目标地址修改为实际服务器地址。

作为调度器的NAT服务器可以将吞吐率提升到一个新的高度,几乎是反向代理服务器的两倍以上,这大多归功于在内核中进行请求转发的较低开销。

但是它的瓶颈在于NAT服务器的网络带宽,包括内部网络和外部网络

方案四、直接路由(LVS-DR)

NAT是工作在网络分层模型的传输层(第四层),而直接路由是工作在数据链路层(第二层)

它通过修改数据包的目标MAC地址(没有修改目标IP),将数据包转发到实际服务器上,不同的是,实际服务器的响应数据包将直接发送给客户羰,而不经过调度器。

方案五、硬件级别

常用产品有F5交换机、array。

Nginx此时就作为LVS或者Array的节点来使用,具体LVS或Array的是选择是根据公司规模和预算来选择,Array的应用交付功能非常强大,本人在某项目中使用过,性价比也远高于F5,商用首选!但是一般来说这阶段相关人才跟不上业务的提升,所以购买商业负载均衡已经成为了必经之路。

原文地址:https://www.cnblogs.com/wangzhongqiu/p/10886972.html