首先,你需要了解三个基础网络知识。
1 DNS
1.1 DNS简单说就是你给它一个域名,它解析一个IP给你。但是实际上情况不是这么简单的。
客户端发起一个DNS查询请求,提交一个完整主机名(例如记录。
1.2如果DNS服务器上没有查询到相关记录,则会询问上一层的DNS服务器。如果上一层服务器解析出结果,则它在返回给用户结果时,顺便自己缓存一份。缓存的时间由域名的TTL决定。
1.3每个域名首先要注册在跟DNS上NS服务器名称。当一个区域中最顶层的DNS也没有用户查询的主机名记录时,则会首先向INTERNET跟DNS获取这个NS服务器名称,并尝试向这个NS服务器发起查询请求。NS服务器必须响应并响应这个查询。如果DNS跟服务器无法被连接到、NS无法被找到、无法被连接到或者NS服务器无法解析,则本主机名最终解析失败。
1.4 DNS如果返回多条A记录时,会生成一个有序集合。这个排序根据历史查询散列,并根据访问者的IP所在区域优化。客户端拿到的集合中的第一条IP通常为一个优化后的地址,但其他地址依旧可作为备选使用。
1.5 DNS服务器通常不归主机管理商所有,并且由于需要快速响应,在查询的时候是无法判断主机状态和负载的。但一些较大的机构,会自己拥有一个重新设计的DNS服务器,考虑到这些信息。而对于这种情况,外部公网的DNS只能解析出一个CNAME,并交由这个DNS来进行后续解析(这个DNS被注册为这个CNAME对应的NS)。这种设计下的DNS通常被认为是NLB(网络负载均衡)设计的一部份。
1.6由于1.2提及的代理查询以及TTL的机制,DNS其实并不能良好的实现服务器的轮询负载均衡,但是可以实现区域优化查询,即对某个特定区域尽量返回其区域内的IP结果。
2 HTTP头
在发起上并行存在多个不同的主机地址。
3 NLB
通常的NLB有三种解决办法。
3.1本地DNS加速,如1.5所述的方法。
3.2 CDN(内容分发网络)。CDN可以被看做是一个独立的技术。
3.3虚拟IP地址。通常情况下,一个IP不应该被设置到超过一个设备上,因为超过这个设置后,上层的路由器就不知道如何转发这个包了。但是,如果路由器经过了设置(例如BGP协议或者专门设计的路由软件等),是可以在多个设备下共享同一个IP的。这种共享既可以是物理的(多个设备同时使用一个IP,由上层路由进行分支选择或者广播、组播数据包),或者是轮询的(多个设备轮流使用一个IP,同时只有一个设备使用这个IP,而这个IP可以在多个设备间高速切换)。如果某个应用必须基于IP地址(例如DNS服务本身),只能使用这种方式来处理。
那么回头看你三个问题。
Q1返回多个A纪录后,客户端会按照集合的顺序依次尝试访问。这些数据在NS服务器上是单一存在的,但是会被多层DNS缓存。
Q2 HTTP头段已经讲述。
Q3希望你看过NLB段后能理解。
开发一个网站最重要的是要了解整个架构,MVC的一些知识。其次需要了解框架的结构,以及常用的内置方法,内置配置项的设置。个人建议学习的最佳途径就是官方的文档了,如果实在看不懂,可以参考一些教育机构的适配...
众所周知,腾讯这家公司在中国的争议很大。一方面是他的社交产品确实为社会做出了巨大的贡献,而他的腾讯游戏则是遭到了大部分人们的吐槽。 其实怎么说呢?从腾讯最新的财报来看,现在腾讯游戏的营收虽然在整个腾讯...
不花一分钱,10分钟建立一个网站,我是怎么做到的?我是一名程序员,工作之余喜欢写一些技术博客。但是呢,我又是懒人,既不想花钱买主机和域名,又不想花时间运营和维护服务器。 于是我找到了一种不仅免费还不用...
三线金叉选股有两种说法: 一种是均价线、均量线和MACD,当5日、10日均线金叉,成交量的5日和10日均量金叉以及MACD金叉同时出现的时候,视为三线金叉,是强烈的买入信号,因为在技术分析中一旦“价、...
我觉得在狗爹注册域名挺好的,我有两个朋友也在这个平台买了域名,他们也觉得挺靠谱。 狗爹算是网络上风评很好的平台了,功能全、服务好、而且也很人性化。平台管理超过8200万个域名,而且各种后缀都有,想要的...
这个问题问得比较宽泛,不知道你对网站域名有没有特殊要求,如果没有可以选老域名,蝙蝠侠IT分别介绍一下他们的特点供你参考: 一.新域名 不是特殊类型的新域名,它的价钱是比较实惠的。 域名的价格主要根据...
在大多情况下,我们在设计网站页面的时候,很多人都关注导航栏和内容的布局,而网站页面底部通常都是被忽略的。事实上,网站页面底部也是整个网站的重要组成部分,用户也可以从页面底部获取想要了解的信息。如果在设...
互联网发展日新月异,网站过几年就变成了“老古董”,网站改版成为seo人员比较挠头的事情。改版容易,改版后网站经过一定时间再合理的利用一些策略才能达到权重传递的作用。蝙蝠侠IT认为做好如下几点你的网站改...