使用 wsadmin 脚本编制配置 Servlet 高速缓存

可以使用脚本编制或 wsadmin 工具来配置 Servlet 高速缓存。 动态高速缓存服务在应用程序服务器 Java™ 虚拟机 (JVM) 中工作,拦截对可高速缓存对象的调用。 例如,它拦截通过 Servlet 服务方法或命令执行方法进行的调用,并且将该对象的输出存储到高速缓存或者从动态高速缓存中提供该对象的内容。

准备工作

在可以配置 Servlet 高速缓存前,必须配置动态高速缓存。 请使用 AdminServerManagement 脚本库中的 configureDynamicCache Jython 脚本来配置动态高速缓存。 wsadmin 工具启动时将自动装入该脚本。 通过以下语法使用 configureDynamicCache 脚本来配置动态高速缓存:
AdminServerManagement.configureDynamicCache(nodeName, serverName,
 defaultPriority,cacheSize, externalCacheGroupName,
 externalCacheGroupType, otherAttributeList)
有关其他信息和参数定义,请参阅 AdminServerMananagment 脚本库的文档。

有关此任务

调用 Servlet 并完成生成高速缓存的输出之后,会创建包含 Servlet 的输出和副作用的高速缓存条目。 这些副作用可能包含对其他 Servlet 或 Java Server Pages (JSP) 文件的调用,或有关条目的元数据,包括超时和条目优先级信息。 配置 Servlet 高速缓存以将 Servlet 的输出和 JavaServer Pages (JSP) 文件保存到动态高速缓存中。

最佳实践: 如果使用 wsadmin 工具来启用 servlet 高速缓存,请验证是否还启用了 Portlet 片段高速缓存。 类似地,如果使用 wsadmin 工具来禁用 Servlet 高速缓存,那么请验证是否也禁用了 Portlet 片段高速缓存。 这两个高速缓存功能的设置必须保持同步。 如果使用管理控制台来启用或禁用 Servlet 高速缓存,那么将自动执行同步。

要查看与动态高速缓存关联的参数列表,请使用 attributes 命令。 例如:

$AdminConfig attributes DynamicCache

过程

  1. 启动 wsadmin 脚本编制工具。
  2. 检索服务器对象的配置标识。
    以下示例将找到的首个服务器设置为 s1 变量:
    • 使用 Jacl:
      set s1 [$AdminConfig getid /Server:server1/]
    • 使用 Jython:
      s1 = AdminConfig.getid('/Server:server1/')
  3. 检索相关服务器的 Web 容器。 并将它们分配给 wc 变量。
    以下示例将 Web 容器设置为 wc 变量:
    • 使用 Jacl:
      set wc [$AdminConfig list WebContainer $s1]
    • 使用 Jython:
      wc = AdminConfig.list('WebContainer', s1)
  4. 使用 enableServletCaching 属性的新值来设置变量。
    将 enableServletCaching 属性设置为 true 并将其指定给 serEnable 变量,如以下示例所示:
    • 使用 Jacl:
      set serEnable "{enableServletCaching true}"
    • 使用 Jython:
      serEnable = [['enableServletCaching', 'true']]
  5. 启用动态高速缓存。
    使用 AdminConfig 对象来修改应用程序服务器配置,如以下示例所示:
    • 使用 Jacl:
      $AdminConfig modify $wc $serEnable
    • 使用 Jython:
      AdminConfig.modify(wc, serEnable)