至此可见,削减就是提高性能和扩展性的代名词。虽然许多原则针对的是软件即服务(SaS)的架构,但这个原则思量的则是客户的浏览器。若是接纳浏览器端的调试工具,如Mozilla Firefox I的插件Firebug9,那么在载入应用中的一个页面时,你就会发现有趣的效果。最惹人注重的效果之是页面中巨细相近的工具下载的时长却不一样。进一步考察,你会发现在最先下载工具之前,都有一个分外的步骤:DNS查找。
域名服务器(DNS)是因特网或其他接纳 TCP/IP协议的网络最主要的基础设施之一。它可以把域名(如www.akfpartners.com)翻译成IP地址(如184.72.236.173),因此常常被比作电话簿。DNS是通过一个分布式数据库系统维护的,该数据库系统的节点是域名服务器。这种分层系统的最顶层是根域名服务器。每个域至少有一个权威的DNS服务器,用于公布关于该域的信息。
接纳多层级缓存的方式可以加速把域名翻译为IP地址,缓存可在浏览器、操作系统、因特网服务提供商等各级举行。不外,在现实天下中页面上都有成百上千的工具,许多工具来自于差别的域,下载每个工具的时间虽然微不足道,然则累加起来形成的时间差就会引起客户注重了我们深入讨论若何削减DNS查询之前,首先应该对大多数浏览器若何下载页面有更多的领会。
这并不是说要深入研究浏览器,然则明白基础原理有助于你优化应用的性能和扩展性。险些所有的Web页面都是由许多差别的工具(图像、Javascript剧本、CSS剧本等)组成的,浏览器行使了这一点,可以同时毗邻下载多个工具。浏览器限制了对每个服务器或署理的最大同时连续毗邻数。凭据HTTP/1.1RFC划定,这个最大毗邻数应该设置为2。然则许多浏览器都市忽略这个RFC,把最大毗邻数设置为6或者更大。在下一个原则中,我们将先容若何行使这个功效优化页面的下载时间。现在,让我们把重点放在可以分成多个工具,并通过多个毗邻下载它们的Web页面。
Web页面上的一个或多个工具可能属于差别的域,每个域都需要在缓存或DNS域名服务器中举行DNS查找。
例如,假设一个简朴的Web页面具有以下4个工具:
1)包罗文本和其他工具相关指令的HTML页面自己;
(责任编辑:网络)

评论列表