ISA Server缓存概述 ISA Server对频繁受到请求的对象进行缓存以改善网络性能可以配置缓存确保组织最常使用的或者是Internet客户端最常访问的的数据都存储在其中 本节学习目标 l说明ISA Server正向和反向Web缓存之间的差异 l解释Cache Array Routing Protocol怎样有助于ISA Server缓存服务器阵列的设置 l描述ISA Server分层缓存配置的优点 估计学习时间分钟 高性能Web缓存 ISA Server的Web代理服务提供对Web对象的缓存以从缓存中满足客户端请求如果缓存中的内容无法满足请求就会启动一个代表该客户端的新请求一旦远程Web服务器对ISA Server计算机做出响应ISA Server计算机缓存对原客户端请求的响应然后客户端收到一个响应 ISA Server的快速RAM缓存把访问最频繁的条目存储在RAM中它从内存中检索此类条目而不是从磁盘检索从而优化了响应时间ISA Server提供优化的磁盘缓存存储将磁盘的读写访问操作减至最少这些技术缩短了响应时间并改善了系统的总体性能 正向Web缓存服务器 ISA Server可以配置成正向Web缓存服务器使内部客户端可以访问InternetISA Server集中缓存频繁受到请求的Internet对象防火墙之后的任一Web浏览器均能访问这些对象从磁盘缓存中服务的对象同从Internet服务的对象相比所需的处理明显要少得多这既改善了客户端浏览器的性能减少了用户响应时间还降低了Internet连接的带宽消耗 图说明了ISA Server缓存对象如何使用户受益虽然该图主要讨论正向Web缓存的情况(内部客户端访问Internet)然而反向Web缓存(Internet用户访问公司的Web服务器)的过程也是一样的图中说明了下列步骤 第个用户(Client)请求一个Web对象 ISA Server检查该对象是否存储在缓存内既然该对象不在ISA Server缓存内ISA Server便向Internet上的服务器请求该对象 Internet上的服务器将该对象返回给ISA Server计算机 ISA Server计算机在其缓存内保留一份副本并将该对象返回给Client Client请求同样的对象 ISA Server计算机从缓存中返回对象而不是从Internet上获得它 反向Web缓存服务器 可以在组织的Web服务器前安装ISA ServerWeb服务器寄存商用Web业务或者提供对业务伙伴的访问对于传入Web请求ISA Server模拟对外Web服务器用缓存中的Web内容满足客户端的请求只有无法从缓存服务请求时才将请求转发给Web服务器 如图所示当一个法国的Internet客户端请求法国本地网的Web服务器上的对象时法国的ISA Server计算机会检查该请求如果被请求的对象位于该ISA Server计算机内就将此对象反馈给客户端用ISA Server计算机上的对象对客户端请求进行服务在地理上更接近发出请求的客户端从而节约了性能开支 如果被请求的对象不在法国的ISA Server计算机内就将此请求路由到加拿大的ISA Server计算机如果该对象不在加拿大服务器阵列的缓存内加拿大的ISA Server阵列就从Web服务器中检索该对象 定时内容下载 ISA Server利用可定制的缓存下载功能提高缓存性能通过ISA Server定时内容下载功能可以根据请求或者时间表将HTTP内容直接下载到ISA Server的缓存内然后可以预测组织内部客户端可能请求的HTTP内容由此来更新ISA Server的缓存于是客户端就从ISA Server缓存直接访问内容而不是从Internet访问 可以下载单个URL多个URL或者整个Web站点制定缓存内容下载作业安排时可以限制应该下载哪些内容例如限制下载到单个域中或者其后要跟的链接的数量还可以限制只下载文本内容安排内容下载进度时通过设置由ISA Server缓存存入对象可以设置动态内容缓存即使HTTP缓存控制报头表明它们未必能进行缓存根据预先设定的随意循环的时间安排进行下载 也可以对传出和传入Web请求配置定时内容下载作业对于传出Web请求需要判断Internet上的哪些对象是用户最常请求的然后定时从Internet检索这些对象并将其载入缓存对于传入Web请求可以安排内容下载作业从内部Web服务器检索内容并将该内容保存在ISA缓存内 活动缓存 ISA Server可以配置为自动更新缓存内的对象启用活动缓存后ISA Server会分析缓存内的哪些对象最常受到访问当缓存内的常用对象快过期时ISA Server会自动刷新缓存中的内容 活动缓存能够使缓存中的对象保持最新在对象实际过期且还受到客户端访问之前它就向原Web服务器验证这些对象它的目的在于加速那些通常需要在源服务器之间往返以使数据重新有效的客户端访问因为这涉及到某些费用(在代理处理和网络带宽方面)所以目标只是更新客户端将来可能要访问的对象 仅仅用流行程度来判断哪些对象需要刷新并不是一个很好的标准因为客户端会手工刷新页面来保持数据更新所以很多流行的页面从不过期此外一个对象可能只是短时间内流行活动缓存编码设法识别那此严格遵循被访问内容的模式的对象这些内容可能要活动刷新——过期后又再次受到客户端的请求的对象 CARP和缓存服务器的扩展性 利用CARPISA Server企业版在将多台ISA Server计算机的阵列作为单个逻辑缓存使用时能够提供无缝扩展和改进的效率CARP通过阵列利用散列式路由选择提供请求解析路径请求解析路径判断浏览器或下游代理服务器请求的信息位于阵列的什么地方或者ISA Server是否必须从Internet上第一次获取被请求的信息然后将其存入缓存并发给用户 CARP还提供以下益处∶ l因为CARP提供确定的请求解析路径所以在代理服务器之间没有查询消息但是常规的Internet缓存协议(ICP)网络中却存在查询消息这样就会导致随着服务器数目的增加网络会更加拥挤 lCARP能够清除另外出现在代理服务器阵列中的内容副本在ICP网络里一个由台服务器组成的阵列会迅速发展成基本上是经常被请求的URL的复制缓存CARP基于散列的路由选择能够防止这种现象的发生它允许台代理服务器作为单个的逻辑缓存存在结果便能对查询做出更快速的响应而且对服务器资源的利用也会有效得多 lCARP拥有积极的可伸缩性由于采用基于散列的路由它独立于PP对等ping代理服务器添加的越多CARP速度会更快效率会更高这和ICP阵列形成了鲜明的对比ICP阵列必须进行查询以判断缓存信息的位置生成无关的网络通信造成效率低下ICP阵列具有负可伸缩性阵列中添加的服务器越多确定位置时服务器之间需要的查询就越多 lCARP能够自动调节阵列里服务器的添加或删除基于散列的路由选择意味着无论是添加或删除服务器时只需要对URL缓存位置进行最小限度的再分配 lCARP能够保证缓存对象在阵列里全部服务器之间均匀地分布或者根据为每一台服务器设置的负载系数进行存储 由于CARP确定的请求解析路径不需要为缓存信息保存大量的位置表浏览器只需对某一对象运行相同的数学函数就能判断它在什么地方 因为阵列内的ISA Server计算机可能配有不同的硬件一些计算机可能比其他的功能更强大您可能希望缓存负载的分配能有所区别CARP具有可配置的功能您可以指定阵列内任一特定服务器的负载系数 此外CARP能够对传入和传出Web请求进行配置例如能够针对所有传出Web请求启动CARP或针对所有传入Web请求禁用CARP 分层缓存 ISA Server企业版支持链式或分层缓存链这个术语是指单独的ISA Server计算机或阵列之间的一种分层连接客户端的请求通过缓存服务器链向上游传送直到发现被请求的对象当对象位于上游服务器内时它会被每一个服务器存入缓存直到该对象返回给客户端链是分配服务器负荷和容错的一种有效方法您可以为分支机构或部门分层布置ISA Server计算机 图举例说明了分支机构的客户端如何请求Internet对象该请求被发给分支机构的ISA Server计算机然后在发送至Internet之前发送到区域总部或公司总部从Internet检索该对象后总公司的ISA Server缓存被请求的对象并且返回至分支机构的ISA Server分支机构的ISA Server缓存该对象然后返回给客户端这种情况下分层缓存非常有用因为对象只在最开始通过总公司发送到Internet而后来的对同一对象的请求则直接从分支机构的ISA Server阵列得到服务 因为链式缓存能够在离用户更近的地方启用缓存因此对整个公司而言至关重要例如在企业内缓存内容可以跨越组织网络边缘的单一的中枢位置移向分支机构和工作组缓存能够向地区ISP入网点移动而不是向中央ISP入网点移动此外链式缓存提供容错功能因为当主路由不工作时它提供一个后备路由接替工作 Web Proxy路由 Web Proxy路由规则进一步汲取了链的概念它允许根据目的有条件地发送请求例如一个公司在英国拥有分支机构它可以在该分支机构中安装ISA |