参考 :CICSPlex SM 公共组件

在与 CICSPlex ® SM 一样复杂的系统中,具有要构建的公共组件的基础,以便可以由单个组件提供公共功能是有意义的。 CICSPlex SM 有许多这样的构建块,这些构建块不仅供需要 CMAS 中服务的所有用户使用,还在需要相同服务时供 MAS 中使用。

CICSPlex SM 的主要组件

表 1 提供 CICSPlex SM 的主要组件的完整列表。

表 1. CICSPlex SM 的主要组件及其 3 字符标识
组件名称 标识
业务应用程序服务 BAS
Common Services SRV
通信 COM
数据高速缓存管理器 瑞士
数据存储库 DAT
内核链接 (Kernel Linkage) KNL
受管应用程序系统 MAS
消息传递服务 MSG
监控服务 星期一
队列管理器 QUE
实时分析 RTA
拓扑服务 TOP
跟踪服务 TRC
工作负载管理器 WLM

内核链接 (Kernel Linkage)

此组件的标识为 KNL ,其模块名称的字符 XL 位于第五和第六个位置 (例如, EYU0XLNE)。

CMAS 的结构中描述了内核链接在方法之间的控制传输中所扮演的角色。

内核链接具有多个子组件,用于提供与基本 CICSPlex SM 环境维护相关的服务。
  • 状态服务

    控制组件之间的同步,并提供用于标识组件状态的公共方法。

  • 通知服务

    为组件提供了一种灵活的方式来通知相关方事件,例如启动 MAS。 它还为组件注册其对特定事件的兴趣提供了方法。

  • 单系统映像(single system image)

    支持向多个 CMAS 和 MAS 分发请求并合并结果。

内核链接还控制在 z/OS® TCB (选择器) 下运行的代码与在 CICS® TCB (方法) 下运行的代码之间的接口。

跟踪服务

此组件的标识为 TRC ,其模块名称在第五和第六个位置具有字符 XZ (例如, EYU0XZPT)。

Trace Services 为其他 CICSPlex SM 组件提供了将跟踪记录写入 CICS 跟踪表和跟踪数据集的能力。

跟踪服务还负责将 MAS 创建的任何跟踪记录写入管理 CMAS 的跟踪表和数据集。 跟踪是 CICSPlex SM 可维护性的关键部分。 由于在 CICSPlex SM 处理期间可能随时发生故障,因此跟踪服务会尽早初始化,并在 CICSPlex SM 处理中尽可能晚地终止。

消息传递服务

此组件的标识为 MSG ,其模块名称在第五和第六个位置具有字符 XM (例如, EYU0XMSM)。

"消息服务" 组件提供用于构建和发出 z/OS 控制台消息的公共设施。 在原型表中定义了消息的固定文本和用于插入的变量文本片段。

然后调用方法按数字请求消息并插入相应的变量文本。 Message Services 还负责创建名为 EYULOG 的合并消息日志,并将 MAS生成的消息写入管理 CMAS。

Common Services

此组件具有 SRV 标识,其模块名称在第五和第六个位置具有字符 XS (例如, EYU0XSCG)。

Common Services 组件提供基本系统服务,例如 GETMAIN , FREEMAIN , POST 和 WAIT 处理。

通过通过单个组件路由针对这些服务的所有请求,大多数 CICSPlex SM 模块都与它们运行所在的实际环境隔离。 因此,相对较少的方法 (组成 Common Services的方法) 需要了解有关如何请求这些服务的详细信息。 其中一个 Common Services 子组件使用作为 z/OS TCB 运行的控制任务来提供计时服务。 另一个子组件提供本地 (在 CMAS 或 MAS中) 和全局 (在 CMAS 及其本地 MAS 之间) 锁定服务。

数据高速缓存管理器

此组件的标识为 CHE ,其模块名称的字符 XC 位于第五和第六个位置 (例如, EYU0XCLA)。

Data Cache 管理器组件实现逻辑高速缓存存储器以供 CICSPlex SM 组件使用。

每个组件都可以请求高速缓存分配,并可以在其中分配高速缓存块。 Data Cache 管理器还提供了一些其他服务:
  • 用于提高获取和释放固定大小的常用块的性能的 quickcell 服务。
  • 一组全面的列表操作服务,用于创建和维护有序的数据列表。
  • 支持对高速缓存列表进行备用索引编制。

队列管理器

此组件的标识为 QUE ,其模块名称在第五和第六个位置具有字符 XQ (例如, EYU0XQGQ)。

队列管理器组件实现在 CMAS 及其所有本地 MAS 之间共享的高速缓存中的数据队列。

当要传递的数据是集合时,队列通常用于在不同的 CICSPlex SM 方法之间进行通信。 可以按顺序或通过相对记录号直接访问队列中的记录。

数据存储库

此组件的标识为 DAT ,其模块名称的字符 XD 位于第五和第六个位置 (例如, EYU0XDGR)。

"数据存储库" 组件提供了用于在 CICSPlex SM 数据存储库 (存储系统配置和定义数据的 VSAM 数据集) 中创建,访问,更新和删除数据的方法。

此组件为数据存储库提供引用完整性支持,并确保在操作仅部分成功时进行正确回滚。 此组件中包含以下子组件:
  • 应用程序编程接口提供对 CICS 系统管理信息的访问,并使外部程序能够调用 CICSPlex SM 服务。
  • "受管对象服务" 将针对数据的请求 (例如,来自实时分析的请求) 转换为获取数据所需的方法调用。

通信

该组件的标识符为 COM,其模块名称的第五位有字符 C(例如, EYU0CSLT )。

通信是 CICSPlex SM 最复杂的组件之一。 它由许多子组件组成,这些子组件提供用于实现 CMAS 到 CMAS 和 CMAS-to-MAS 通信的所有服务。

除了 "通信" 组件外, CICSPlex SM 还使用 ESSS 中的 z/OS 程序调用例程。 对于 CMAS 与其本地 MAS 之间的通信,这些程序调用例程提供跨内存服务以实现更高效的通信。

一个 CMAS 和另一个 CMAS 之间的通信可以使用 CICS 系统间通信 (ISC) 或区域间通信 (IRC) 服务 (通常称为多区域操作或 MRO)。 由于围绕 CMAS 网络的消息路由不需要用户定义路径或路由信息,因此 "通信" 的子组件会维护网络的动态拓扑并根据需要确定路由。

"通信" 组件为所有其他 CICSPlex SM 组件 (即远程方法调用) 实现简单模型。 方法仅构建 MAL 并通过 Access Services 子组件调用 Communications ,指定所需处理的目标和类型。 然后, "通信" 组件将传输 MAL 并使其在目标位置运行。 还会自动传输远程运行方法所需的所有数据。 由于明确定义了所有方法及其 MAL ,因此 "通信" 组件知道必须向目标发送哪些数据以及必须向调用者返回哪些数据。 传输的数据可以是 MAL 本身的简单数据, MAL 指向的数据, CICSPlex SM 队列或高速缓存列表。