系列文章是博主对沈剑的《架构师训练营》分享内容的个人笔记总结,原内容公众号“成为架构师”。
问题引入:
- nginx是2012年才流行起来的技术,在反向代理之前的怎么对流量承受能力进行扩容呢?
- nginx成为了瓶颈应该怎么办
1 DNS轮询
最初的单体架构,流量直接打到唯一的一个web-server上:

tomcat只有1000QPS的抗压能力,当流量增大时,在反向代理流行之前,解决方案就是引入DNS轮询

DNS轮询:就是将多个web-server的实际公网ip配置到域名之下,通过dns-server来将流量按照轮询顺序转到对应ip的web-server上
DNS轮询的优势
- 支持扩展且成本低,主要增加机器和添加ip到域名即可
- 原先的系统不需要改造
- 负载均衡,dns可以保证每个节点是均衡的
DNS轮询的劣势
- 无法保证高可用,dns-server无法知道某一ip下的web-server是否可用,流量依旧会会被转到这里,这部分流量就会访问失败
- 扩容非实时,dns的解析生效有延迟
- 暴露过的的公网ip,安全性存在问题
2 反向代理
反向代理的优势</

本文介绍了接入层的架构演进,从DNS轮询到多层反向代理,探讨了nginx在高可用和扩展性中的作用。DNS轮询提供低成本扩展但无法保证高可用,反向代理解决此问题但可能成为单点故障。多层反向代理结合DNS轮询,用于处理大规模流量,实现更高可用性和扩展性。
最低0.47元/天 解锁文章
171万+





