我试图估计一个给定网站主机名发布多个IP地址的性能影响。
浏览器是否按随机顺序选择地址?
它们是对所有连接使用相同的地址,还是对所有请求同时使用不同地址之间的多路连接?
这是如何影响保持活着和后保持活着的请求?例如,如果用户正在进行搜索,那么我非常希望他们从那里开始使用同一台服务器,因为在这么热的服务器上访问同一个搜索查询的页面2可能比在冷服务器上快得多。有什么简单的方法来确保这样的事情,而不引入单一位置的主机名到www使用?
发布于 2013-02-05 11:23:45
浏览器是否按随机顺序选择地址?
不是的。浏览器向操作系统发出请求,以获取主机名的单个IP地址。当浏览器发出请求时,操作系统可以使用多种策略中的一种来确定要使用的IP地址。其中包括:
它们是对所有连接使用相同的地址,还是对所有请求同时使用不同地址之间的多路连接?
大多数浏览器将DNS查找的结果缓存一段时间之后才从操作系统发出请求。因此,单个客户端通常不会多路复用。
这是如何影响保持活着和后保持活着的请求?
HTTP保持活动请求在与前一个请求相同的连接中执行。因此,不执行DNS查找,它将使用相同的主机。保持活动的超时时间通常在10秒左右,因此由同一个用户执行的两个查询不太可能在此窗口内。但是,页面请求和图像和javascript请求几乎总是如此。
至于后保持活动的请求,这取决于浏览器缓存DNS信息的时间。它可能会缓存它几分钟,但它可能不会。
你可能想读维基百科关于循环域名系统的文章。它在“缺点”部分下有一些评论,您可能会发现这些评论很有帮助:http://en.wikipedia.org/wiki/Round-robin_DNS
https://webmasters.stackexchange.com/questions/43245
复制