ENQMODEL 资源

ENQMODEL 定义 EXEC CICS ENQEXEC CICS DEQ 命令具有综合系统范围作用域的指定资源。

CICS® 将 ENQMODEL 资源与 z/OS® 全局资源序列化配合使用,以提供对多个应用程序所使用的资源的综合系统范围保护。 单个 CICS 区域中的本地入队在 CICS 地址空间中进行管理。 影响多个 CICS 区域的综合系统范围的入队由 z/OS 全局资源序列化管理。 有关全局资源序列化的更多信息,请参阅 z/OS MVS Planning: Global Resource Serialization

对资源发出 EXEC CICS ENQEXEC CICS DEQ 命令时, CICS 将检查是否存在匹配的已安装 ENQMODEL 定义。 ENQMODEL 资源的 ENQSCOPE 属性定义共享同一入队作用域的区域集。 如果 ENQSCOPE 属性保留为空 (缺省值) ,那么 CICS 会将任何匹配的入队或出队请求视为发出 CICS 区域的本地请求。 如果 ENQSCOPE 为非空白,那么 CICS 会将入队或出队视为sysplex作用域,并将队列名称和资源名称传递到 z/OS 全局资源序列化以管理入队。

可以在环配置或星型配置中配置 z/OS 全局资源序列化。 出于性能原因,建议不要对多系统环境中的生产区域使用环配置。 您还可以使用 CICS 系统初始化参数 NQRNL 来指定 z/OS 全局资源序列化是否对 CICS 入队请求使用 RNL 处理,这可能会影响资源范围。 有关为 CICS配置 z/OS 全局资源序列化的更多信息,请参阅 全局 CICS 入队和出队: 提高性能

您可以使用 DISPLAY GRS 命令显示正在使用 z/OS 全局资源序列化工具的综合系统入队,例如:
D  GRS,RES=(DFHEqname|*,[  rname|,*])
其中:
qname
指定由 ENQMODEL 资源定义的 4 字符 ENQSCOPE。
名称
指定由 ENQMODEL 资源定义的 ENQNAME。

仅对于资源支持综合系统范围的入队,而对于地址上的入队,则不支持综合系统范围的入队。 它不是为了锁定可恢复资源而设计的。

对 ENQMODEL 资源的访问权

需要使用综合系统范围的入队或出队功能的 CICS 区域都必须定义并安装所需的 ENQMODEL 资源。 确保这一点的建议方法是 CICS 区域共享 CSD ,以及初始化组列表包含相同的 ENQMODEL 组。

当您定义相应的 ENQMODEL 资源时,应用程序使用综合系统入队; 不需要更改应用程序。 对于动态配置资源名称的应用程序,因此事先未知,您可以使用入队 EXEC 接口程序出口 XNQEREQ 和 XNQEREQC 在资源名称的开头提供与适合的 ENQMODEL 资源定义匹配的字符。 有关这些用户出口的更多信息,请参阅 入队 EXEC 接口程序出口 XNQEREQ 和 XNQEREQC