解析离不开DNS。另外,DNS的作用还有什么呢?
10余年建站经验, 成都做网站、网站建设、外贸营销网站建设客户的见证与正确选择。创新互联公司提供完善的营销型网页建站明细报价表。后期开发更加便捷高效,我们致力于追求更美、更快、更规范。
http请求的典型执行流程是什么?
典型流程是:
(1)客户端请求服务器发解析;
(2)dns服务器返回域名对应的网络IP(1.2.3.4);
(3)客户端通过外网ip(1 . 2 . 3 . 4),访问反向代理;
(4)反向代理将请求分发给网络服务器;通过内部网IP(192.168 . x . x);
(5)dns服务器处理请求;
第一步,将域名转换为ip的过程,发生在应用系统之外,通过DNS实现。
除了域名解析,DNS在架构设计上还能做什么?
首先,用户就近访问
DNS可以实现对用户所需资源的最近访问:
(1)电信用户希望访问某个服务器资源;
(2)浏览器向dns服务器发起域名解析请求;
(3)dns服务器识别访问者是电信用户;
(4)dns服务器将电信机房nginx外网ip返回给访客;
(5)游客就近访问;
根据用户的ip,返回最近的服务器ip称为“智能DNS”,最常用的是CDN和多机房。
二、反向代理的横向扩张
在典型的互联网架构中,web层的性能可以通过添加web服务器来扩展,但是反向代理nginx仍然是整个系统的唯一入口。如果系统吞吐量超过nginx的性能极限,难以扩展,则需要dns-server配合水平扩展。
具体方法是:在dns-server中,同一个域名可以配置多个nginx外部ip,每次dns解析请求都会通过轮询返回不同的ip,这样nginx就可以横向扩展。这种方法叫做“DNS轮询”。
第三,网络服务器负载平衡
由于“dns轮询”可以将同一个域名的流量平均分配给不同的nginx,它还可以用来平衡web服务器的负载:
(1)从架构中移除nginx层;
(2)直接将多个网络服务器的内部网络ip改为外部网络IP;
(3)在dns服务器中轮询对应的外地网络IP;
通过DNS实现负载均衡有哪些优缺点?
优点:
(1)使用第三方DNS实现,服务器架构不需要移动;
(2)缺少一层网络请求;
缺点:
(1)DNS只有解析功能,不能保证对应外网ip的可用性。nginx作为反向代理时,NGINX和web-server之间有一个保活检测机制,可以在web-server挂掉时自动迁移流量;
(2)当web-server需要扩展时,通过DNS扩展需要很长时间,nginx是服务器完全可控的部分,所以web-server的扩展更加实时方便;
由于以上两个原因,架构中一般使用高可用的反向代理。
综上
在架构设计中,除了域名解析,DNS还有其他用途:
(1)智能DNS,根据用户ip访问附近的服务器;
(2)DNS轮询,横向扩展反向代理层;
(3)DNS负载均衡;
以上是我为大家汇总的关于DNS除了解析域名还能做什么的内容。希望大家多了解一下DNS的用途。
文章名称:DNS除了解析域名外还有哪些用途?
文章起源:
http://cqcxhl.com/article/idpcsp.html