DNS服务的基本功能:
(本质: 一个域名对应一个外网IP,一个外网IP 对应一台nginx服务,一台ninx 服务对应多个后台服务,实现后台服务 负载扩展)
客户的请求域名时,dns先解析域名为具体的外网ip,返给客户端客户端拿到外网IP, 访问外网IP指向 反向代理 nginxnginx 配置多个后台的 web-server实现服务端的负载均衡
DNS 反向代理水平扩展(本质:一个域名对应 多个外网IP,每个外网IP对应一台 nginx服务, 每台ninx映射相同的内网后台服务,实现反向代理ninx的负载 和后台服务的负载 )
DNS水平扩展nginx的思想:
DNS 采取轮询的方式,把每一次域名请求解析为 对应的外网ip中的某一个
应对场景:
鉴于nginx时整个系统的唯一入口,如果系统吞吐超过nginx的性能极限,承载不了过多的域名流量,难以扩容,
可通过 在dns服务上对同一个域名配置多个nginx外网IP, 每次DNS解析请求,轮询返回不同的IP
nginx层面下更小粒度的 分布式负载:
一般思想:
分模块集群部署
更小粒度的思想:
当个别模块流量比较大时,可以把这些模块在根据具体业务切分, 实现更小粒度的 分布式集群
京东商城的一个场景:
www.jd.com 首页 (可以设想为 DNS 解析域名 ,到可能多个外网IP,到对应多台nginx服务, 到多个后台集群服务)
www.xxxx.com 通过首页跳转某一个模块后,域名变为一个新的域名,而非jd的子域名
由此可见,京东商城的不同模块由不同的ninx负载,实现分布式集群
相关文章
- Nginx在Linux中的最小化安装方式
- Serverless架构在实时数据处理中的应用
- es中自定义ik的分词词库(词库布置在nginx)
- 【在Linux世界中追寻伟大的One Piece】DNS与ICMP
- centos7 下 安装GeoIP2,在nginx中根据ip地址对应的国家转发请求
- Kotlin特性在MVP、MVVM架构中的应用
- jwt在nginx lua中的使用
- Web API应用架构在Winform混合框架中的应用(4)--利用代码生成工具快速开发整套应用...
- java架构师指南:架构师在团队中的作用
- 微信小程序开发架构——JavaScript的基本概述 和 JavaScript在 Nodejs、小程序中、浏览器中的使用方法