Windows 事务与大型机事务

在 Host Integration Server 帮助中,Microsoft Windows .NET Framework 环境中的事务与大型机环境中的事务并不相同。

  • Windows 环境中的事务是由 Microsoft 分布式事务处理协调器 (DTC) 协调的一组操作,作为满足 ACID 测试的原子工作单元;换句话说, 事务是tomic、 consistent、 isolated 和 durable。 事务中的所有操作都已完成,或者未完成任何操作。

  • 大型机主机 (CICS 或 IMS) 环境中的事务是结构化事务程序 (TP) 的一部分代码,TP 是包含一个或多个大型机事务的单个 COBOL 程序文件。 因此,大型机事务可能满足也可能不会满足 ACID 测试。

    TI 自动化服务器是部署在.NET Framework应用程序中的 TI 组件。 TI 自动化服务器中的单个方法调用基于单个大型机的 TP。 TI 自动化服务器中的任何 TI 方法都可以调用 TP 中的任何事务,但由 TP 确定要运行哪些事务。 大型机 TP 根据从 TI 自动化服务器发送给它的信息做出此决定。 CICS 或 IMS TP 可以提供任何类型的服务,例如终端交互、数据传输、数据库查询和数据库更新。 TP 还可以包含一个或多个事务。

    大型机 TP 在 IBM CICS 环境中也有专用的含义。 将高级程序到程序通信 (APPC) 与另一个程序配合使用的任何程序称为 TP) (事务程序。 APPC 是 IBM 开发的一组协议,专用于大型机、IBM IS、3174 群集控制器和其他智能设备之间的对等网络。 要使 TP 使用 APPC 直接与另一个 TP 通信,这两个程序必须先建立 LU 6.2 会话并相互对话。

    LU 6.2 是大型机环境中分布式事务处理的事实标准协议。 它由 CICS 和 IMS 子系统使用。 一个程序可以在三个同步级别之一与另一个程序交互:

  • 除序列号之外,同步级别 0 没有消息完整性,无法检测丢失或重复的消息。

  • 同步级别 1 支持允许客户端和服务器的端到端确认的 CONFIRM-CONFIRMED 谓词。

  • 同步级别 2 支持 SYNCPT 谓词,它通过两阶段提交 (2PC) 跨分布式事务提供 ACID (原子性、一致性、隔离性) 属性。

    在三个同步级别中,只有同步级别 2 提供与 Windows、COM、COM+ 或 .NET Framework 事务相同的保证。

注意

TCP/IP 协议不适用于分布式事务处理,因此 TCP/IP 不提供 LU 6.2 同步级别 2 中的 2PC 提供的 ACID 保证。 因此,网络协议 (LU 6.2 或 TCP/IP) 决定了是否可以保证 TP 中的事务作为原子、一致、隔离和持久单元运行。

因此,在 CICS 和 IMS 环境中,术语事务程序 (TP) 可能也可能不会暗示使用 2PC。 术语事务程序是指程序本身。 仅当通过添加术语“同步级别 2”来限定术语事务时,Windows 开发人员和大型机开发人员才能确保他们指的是同一项内容。

TI 支持在 SNA 网络中通过 LU 6.2 同步级别 0 和同步级别 2 对话。 如果方法调用是 DTC 协调事务的一部分,则 TI 使用同步级别 2 与 CICS 或 IMS 版本 6.0 与 Resource Recovery Services (RRS) 进行通信。 如果方法调用不是 DTC 协调事务的一部分,则 TI 使用同步级别 0。

另请参阅

对事务和两阶段提交的支持
联机事务处理