• 【高并发解决方案】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,商用首选!但是一般来说这阶段相关人才跟不上业务的提升,所以购买商业负载均衡已经成为了必经之路。

  • 相关阅读:
    IO流 编码格式转换
    SFTP
    windows下redis 开机自启动
    NationalInstruments.UI.WindowsForms.NumericEdit
    VisualStudio SVN忽略
    VS2012 项目引用了项目/DLL文件,也写了Using,但是编译时提示:未能找到类型或命名空间名称
    JS原型链与继承
    HTML+CSS快速编写插件EMMET
    PHP中的替代语法(冒号、endif、endwhile、endfor)(转)
    在Android studio中如何把项目放到远程git或从远程git得到项目
  • 原文地址:https://www.cnblogs.com/wangzhongqiu/p/10886972.html
Copyright © 2020-2023  润新知