配置工作管理器

工作管理器充当使用 Concurrency Utilities for Java™ EE 或异步 Bean 的应用程序组件的受管执行程序 (线程池) ,线程工厂和线程上下文服务。 使用管理控制台配置工作管理器。

准备工作

如果您不熟悉工作管理器,那么请参考“工作管理器”概念性主题。

有关此任务

工作管理器服务已启用。 在先前版本的产品中,可以使用管理控制台或配置服务禁用工作管理器服务。 工作管理器服务配置对象仍然存在于配置服务中,但是忽略了启用的属性。

可以为每个单元定义多个工作管理器。 每个工作管理器都绑定到 Java 命名和目录接口 (JNDI) 名称空间中的唯一位置。

重要信息: 仅在 Enterprise JavaBeans (EJB) 容器或 Web 容器中支持工作管理器服务。 不支持从 Java Platform, Enterprise Edition (Java EE) 应用程序客户机容器查找和使用配置的工作管理器。

过程

  1. 启动管理控制台。
  2. 选择 资源 > 并行 > 工作管理器
  3. 指定 作用域 值,然后单击 新建
  4. 指定工作管理器设置的必需属性。
    作用域
    已配置的资源的作用域。 此值指示配置文件的位置。
    名称
    工作管理器的显示名称。
    JNDI 名称
    工作管理器的 Java 命名和目录接口 (JNDI) 名称。 资源环境引用可以与此名称绑定,并由必须查找工作管理器的组件使用。 每个工作管理器必须具有在单元中唯一的 JNDI 名称。
    警报线程数
    对于专门用于处理警报及安排在特定时间点运行的工作的独立线程池,使用的最大线程数。 工作管理器将监视暂挂的警报及已调度工作,并将它们分派到此线程池。
    注: 您为此属性指定的警报线程数不会影响您为 "最小线程数" 和 "最大线程数" 属性指定的线程数。 “警报线程数”属性仅适用于警报线程的线程池。 “最小线程数”和“最大线程数”属性仅适用于用于处理工作请求的主要线程池。
    最小线程数
    应用于主线程池,该线程池用于处理提交到工作管理器以便立即运行(而非安排在特定时间点运行)的工作。 线程池中根据需要创建并要保留的线程数。
    最大线程数
    应用于主线程池,该线程池用于处理提交到工作管理器以便立即运行(而非安排在特定时间点运行)的工作。 要在线程池中创建的最大线程数。 选中“可增加的”复选框时,可以临时执行最大线程数。 当这些额外线程上的工作完成后,线程将被废弃。
    线程优先级
    要对该线程池中所有线程以及受管线程工厂所创建的所有线程指定的优先级。

    每个线程都具有优先级。 高优先级线程将在低优先级线程之前运行。 有关如何使用线程优先级的更多信息,请参阅 Java Standard Edition 规范中 java.lang.Thread 类的 setPriority 方法的 Javadoc。

  5. [可选] 指定工作管理器的“描述”和“类别”。
  6. [可选] 选择服务名称(为 Java EE 组件提供的线程上下文类型),您希望此工作管理器从提交线程(或从查找或注入受管线程工厂的线程)捕获这些服务名称并在执行线程时提供这些服务名称。 所选服务的列表也已知为工作管理器的“粘性”上下文策略。

    选择比需要的更多的服务可能会降低性能。

    其他可选字段包含:
    工作超时
    指定取消或释放已启动的工作单元前等待的毫秒数。 如果未指定值,那么禁用超时。
    工作请求队列大小
    指定工作请求队列的大小。 工作请求队列是用于存放已调度工作对象的缓冲区,此大小可以是 1 或大于 1 的值。 线程池从此队列获取工作。 如果您不指定值或值为 0,那么将自动管理队列大小。 自动管理队列大小时,该大小将计算为 maximum_number_of_threads 或 20 的较大者。 较大的值会消耗大量的系统资源。
    工作请求队列满操作
    指定线程池用尽并且工作请求队列已满时执行的操作。 此操作在向工作管理器提交非守护程序工作时启动。 如果设置为 FAIL,那么执行程序或工作管理器 API 方法将引发异常,而不是阻塞。
    [z/OS]缺省事务类
    [z/OS]指定当 z/OS® 工作负载管理器服务类信息未包含在工作上下文信息中时,用于对此工作管理器实例运行的工作进行分类的事务类名。
    [z/OS]守护程序事务类
    [z/OS]指定对此工作管理器实例启动的“守护程序”工作进行分类所使用的事务类名。
  7. [可选] 选择 定制属性> 新建
    其他可选字段包含:
    名称
    lateWorkTime
    秒数
    描述
    指定描述
    类型
    选择 java.lang.String

    lateWorkTime 定制属性是一个秒数,超过此秒数后,后开始的工作必定会导致记录参考消息。 会针对每个工作管理器记录该参考消息。 缺省值是 60 秒,值 0 会禁用此属性。

    名称
    lateAlarmTime
    秒数
    描述
    指定描述
    类型
    选择 java.lang.String

    lateAlarmTime 定制属性是一个秒数,超过此秒数后,后触发警报必定会导致记录参考消息。 会针对每个工作管理器记录该参考消息。 缺省值为 5 秒,值 0 会禁用此属性。

  8. 保存配置。

结果

现在工作管理器已配置,必须管理异步代码启动的应用程序组件可以访问它。