基于需求的作业调度

批处理会同时提供隐式和显式作业调度需求,这将根据应用程序名称按端点进行匹配。

隐式需求匹配

隐式调度需求决定作业所运行的应用程序。在 Java™ Platform, Enterprise Edition (Java EE) 应用程序中,已安装在调度域中的所有 Java EE 应用程序的应用程序名称可通过产品配置获知,因为所有 Java EE 应用程序都通过产品管理接口安装到此环境中。

对于 批处理 实用程序应用程序,不能假设此信息。缺省情况下,该信息不可用,因为 批处理 实用程序应用程序在不受产品管理接口的控制的情况下进行安装。对于这些应用程序,批处理 管理员可以通过设置 grid.apps 节点定制属性为特殊节点选择性地启用基于应用程序名称的端点选择。

通过此属性,管理员建立该节点上可用的网格实用程序应用程序的配置确认。为节点设置 grid.apps 节点定制属性时,只有当给定 xJCL 中所有指定的 批处理 实用程序应用程序都显示在 grid.apps 列表中时,该节点才是用于作业分派的合格端点。 如果未设置节点上的 grid.apps 节点定制属性,那么在该节点的端点选择过程中将不考虑应用程序名称。当存在指定或不指定 grid.apps 节点定制属性的节点组合时,优先顺序将管理端点选择。以下代码显示了优先顺序。
if any node published grid.apps then
	attempt to match job using app names
	if there is a match then
		if job has required-capabilities then
			candidate-nodes= $(apply required-capabilities to the set of nodes that have
matching apps)
					else
		candidate-nodes= $(nodes that have matching apps)
					endif
else (no match based on grid.apps)
			if job has required-capabilities then
		candidate-nodes= $(apply required-capabilities to all nodes)
					else
		candidate-nodes= $(all nodes)
					endif
		endif
else (no nodes publish grid.apps)
			if job has required-capabilities then
							candidate-nodes= $(apply required-capabilities to all nodes)
			else
							candidate-nodes= $(all nodes)
			endif
endif
在端点选择期间,Java EE 类型应用程序始终使用匹配的应用程序名称。

显式需求匹配

显式需求匹配允许作业指定合格端点必须符合的特殊需求。这些需求在 <required-capability> 属性上的 批处理 作业 xJCL 中指定。当指定了必需的功能时,只有宣传匹配功能的端点才适合于接收作业。匹配表达式可以指定下列任一节点属性:
  1. 节点定制属性
  2. 节点元数据属性。例如,com.ibm.websphere.xdProductVersion
  3. 节点名和节点主机名

需求匹配优先顺序

隐式和显式匹配工作一起确定合格端点。 对于 Java EE 类型作业,会将隐式需求(应用程序名称)视为其他必需功能;从逻辑上对其附加任何显式指定的需求。

对于 批处理 实用程序作业,应用程序名称是仅适用于 批处理 实用程序节点的有条件的需求,这些实用程序节点通过 grid.apps 属性宣传它们已安装的应用程序。不存在应用程序名称匹配项且不指定显式需求的 批处理 实用程序作业适合于分派至任何不宣传其应用程序的 批处理 实用程序。


指示主题类型的图标 概念主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cgrid_cgjobsched
文件名:cgrid_cgjobsched.html