ISA用路由规则创建基本的缓存策略
5.1.3 缓存的处理流程
图5.3所示为缓存对象的处理流程图解。该图说明了ISA Server如何分析路由规则、缓存配置,以及现有缓存内容,从而判断是否应该从缓存中检索某个对象。
如果用户的请求得到准许,ISA Server就会检测缓存中是否有该对象。如果请求是发给了ISA Server计算机的一个阵列,那么就使用CARP运算法则来判断应该检测哪一个服务器的缓存。如果对象不在缓存中,ISA Server就检测路由规则行为来决定如何路由该请求。如果对象在缓存中,ISA Server执行下列步骤:
1. ISA Server检测对象是否有效。如果下述任一情况为真值,该对象无效:
在信源中所指定的TTL已经过期。
预定的缓存内容下载作业中配置的TTL已经过期。
为缓存配置属性对话框中的对象所配置的TTL已经过期。
如果对象是有效的,那么ISA Server就从缓存中检索对象,并将其返回给用户。
2. 如果对象是无效的,那么ISA Server就检测现行路由规则。如果路由规则缓存属性配置为返回对象的任何版本,那么ISA Server就从缓存中检索无效的对象。
3. 如果路由规则配置为路由该请求,ISA Server 就会决定是否将请求路由到上游服务器或者发送到被请求的Web服务器。
4. 如果路由规则配置为将请求路由到Web服务器,ISA Server通过检测来判断Web服务器是否可访问。
5. 如果Web服务器是不可访问的,ISA Server检测是否将服务器配置为从缓存中返回过期的对象。如果选择了返回过期的对象,该对象就会从缓存中返回给用户。
6. 如果Web服务器是可访问的,ISA Server就会判断对象是否是可缓存的。如果可以,而且如果路由规则缓存属性配置是把响应存入缓存,那么ISA Server就会将对象存入缓存,同时把对象返回给用户。
5.1.4 缓存筛选
把不同的路由规则应用到不同的目的中,可以将ISA Server配置为只缓存选定的目的的内容。这样就可以有效地筛选哪些内容将存入缓存。
例如,您不想把特定的Internet服务器example.microsoft.com上的对象存入缓存。可以配置一个具有以下属性的路由规则:
一个包括example.microsoft.com的目的集。
为现行路由方法设置请求操作。
将缓存配置为不缓存对请求的响应。这样可以保证内容直接来自信源,不会过时。
5.1.5 附加的缓存策略
有些缓存行为可能由站点和内容规则以及发布规则来决定。
ISA Server以缓存模式安装时,站点和内容规则给仅有缓存的方案增加了访问策略机制和安全特性。站点和内容规则限制了哪些站点和MIME内容可以由特定的Internet用户和客户机访问。
Web发布规则将Internet客户端请求映射到局域网的适当Web服务器上。该规则通过决定哪些客户端地址集可访问缓存、哪些服务器可以把数据上载到缓存中,从而影响反向缓存行为。
5.1.6 练习:缓存动态内容
ISA Server中,带有动态内容的Web对象的地址中有一个问号(?)。缓存动态内容是路由规则中配置的一个选项。不过,默认的路由规则是只有内容为非动态时才可以缓存。所以,要缓存动态内容,需要创建一个新路由规则,指定应该始终缓存内容。
练习:创建路由规则缓存动态和非动态内容
默认路由规则的缓存属性是不可配置的。因此,要改变ISA Server 缓存的内容的类型时,需要创建一个新的终缓存内容的路由规则。把该规则应用到请求中,不论是动态内容还是非动态内容,都会缓存请求的结果。
Ø 创建始终缓存内容的路由规则
1. 在ISA Management中,依次找到Servers and Arrays、MyArray、Network Configuration、Routing。
2. 右击Routing文件夹,指向New,然后单击Rule。
出现New Routing Rule向导。
3. 在Routing Rule Name文本框中,输入Cache Dynamic Content。
4. 单击Next。
出现Destination Sets屏幕。
5. 保留AlDestinations处于默认状态,然后单击Next。
出现Request Action屏幕。
6. 保留Retrieve Them Directly From Specified Destination处于默认状态,然后单击Next。
出现Cache RetrievaConfiguration屏幕。
7. 保留A Valid Version Of The Object; If None Exists, Retrieve The Request Using The Specified Requested Action处于默认状态,然后单击Next。
出现Cache Content Configuration屏幕。
8. 选择AlContent, Including Dynamic Content, WilBe Cached单选按钮,然后单击Next。
出现Completing The New Routing Rule Wizard屏幕。
9. 单击Finish。
在详细信息窗格中出现Cache Dynamic Content路由规则。
5.1.7 小结
ISA Server中完整的缓存策略包括缓存配置属性,可能还包括访问策略和发布规则。但是,您所配置的路由规则将决定应该缓存哪些对象、应该什么时候从缓存中检索请求。这是缓存策略中最根本的方面。
通过在ISA Management的Network Configuration节点中配置的路由规则,决定了ISA Server是否处理某个请求。路由规则遵循以下步骤之一:
把请求路由到上游服务器,除非ISA Server 可以从缓存中返回被请求对象的一个有效(没有过期)版本;
把请求路由到上游服务器,除非ISA Server 可以从缓存中返回被请求对象的任何一个版本(有效或者无效);或者
从缓存中路由被请求对象的任何一个版本,而且从不向上游服务器路由请求。
路由规则还决定请求满足后,什么时候缓存内容:始终、从不、或者只当信源和请求标题说明要缓存时。
您所创建的任何一个路由规则都能应用到所有的目的中、所有的内部目的中、所有的外部目的中、某一特定的目的集中、或者除了指定目的集之外的所有目的中。把不同的路由规则应用到不同的目的中,可以配置ISA Server 只缓存来自选定目的的内容。
路由规则是按次序处理的。默认路由规则是最后一个被处理的规则。如果请求和规则所指定的条件匹配,该请求就会被路由、重定向、缓存等等。否则,处理下一个规则。默认规则是最初配置的来处理Web请求,以便请求路由到上游服务器,除非缓存中存在被请求对象的一个没有过期的版本。另外,只有信源和请求报头说明要缓存,默认路由规则才将检索到的对象存入ISA Server 的缓存中。因为不能改变默认路由规则的这些属性,所以,如果要配置一个自定义的缓存策略,需要创建新路由规则。(小节完)