(ZOS) Optimized local adapters on WAS for z/OS
Optimized local adapters support on WebSphere Application Serverfor z/OS consists of a set of callable services and a Java EE Connector Architecture (JCA) 1.5 resource adapter. The services and adapter work together to provide high performance calling between native language applications on z/OS and business logic in a WAS for z/OS environment.
The optimized local adapters can be used to make inbound calls to applications deployed on WAS from an external address space. They are also used to make outbound calls from WAS applications to applications running in an external address space on the same z/OS system.
With this support, existing z/OS applications that are written in Cobol, PL/I, C, C++, and assembler can achieve high performance and efficient integration with Java applications deployed under WAS on the same z/OS system.
Optimized local adapters also provide close integration of qualities of service (QoS), including support for fast thread-level security propagation and assertion between the API-exploiting external address spaces and WAS for z/OS. Support is provided for using the adapters APIs in the following environments: Customer Information Control System (CICS ), Information Management System (IMS), UNIX System Services (USS), and batch processing.
Two paths for the adapters exist: Support for inbound EJB calls to WAS for z/OS and support for outbound communication with locally running external server programs from WASfor z/OS.
A task-related user exit (TRUE) program is provided to support the optimized local adapters under CICS.
Optimized local adapters support is provided for applications running in IMS-dependent region environments using the IMS External Subsystem Attach Facility (ESAF). With this ESAF, WebSphere optimized local adapters are implemented as an IMS subsystem.
Benefits to using optimized local adapters
There are several benefits to using the optimized local adapters, including:
- Performance improvement
Significant performance characteristics can be achieved when using the optimized local adapters APIs to call into applications deployed on a WebSphere server from a local batch, USS, IMS, and CICS applications. The ability to pass parameter data using binary techniques provides a large part of the performance improvement. The transport-level support that the adapters provide uses z/OS cross-memory services to optimize the performance of calls to applications deployed on a locally accessible WAS for z/OS server.
- Identity context propagation
For inbound requests to WAS using the optimized local adapters APIs, the user ID on the existing z/OS thread is always propagated and asserted in theWAS EJB container. For calls from CICS, this can be extended with a registration option which indicates that the identity of the CICS task level user is propagated and asserted. For calls from applications deployed on WAS, identity can be propagated and asserted under CICS using the optimized local adapters CICS Link server. Selection of this behavior is also controlled with a flag on the registration API.
When using optimized local adapters over IMS Open Transaction Manager Access (OTMA) support, the identity of the WAS application user on the current thread can be propagated and asserted in the target IMS-dependent region (Fast Path or Message Processing Region).
- Global transactions
Global, two-phase commit transactions are supported with the optimized local adapters for inbound calls from CICS to WAS, and outbound calls from WASto CICS.
Resource manager local transactions (RMLT) are supported with the optimized local adapters for outbound calls from WAS for z/OS to CICS when using the supplied link server.
Two-phase commit and RMLT support for outbound calls from WAS to CICS requires the use of CICS Transaction Server for z/OS, Version 4.1 or later.
- Workload balancing and availability
The workload balancing framework in the optimized local adapter support is designed so that the inbound call requests are passed into the target server control region, where the requests are queued using z/OS workload management (WLM) to an eligible servant region for execution.
- Local binding support
Optimized local adapters can provide a high performance local binding for existing applications, middleware, and subsystems on z/OS platforms. These local bindings are used with current programming interfaces when it is determined there is a local WAS available.
- Providing a gateway or proxy for legacy assets on z/OS systems
Built-in optimized local adapters provide the basis for you to begin to use the WAS for z/OS stack as an easily accessible set of capabilities. These capabilities extend the life of application assets that might be difficult to replace. When we use an enterprise bean as a proxy, any Cobol, assembler, or C/C+ application that is deployed on a z/OS system can become a Web services client or a Web 2.0 application requestor that reaches a set of Web applications that are within reach of our locally running application server.
Use the WAS outbound APIs, any Cobol, assembler, or C/C+ application can be presented to WAS as a callable service. A provider Web services application can then be deployed in the local WebSphere server that accepts requests as a gateway for this backend service. In this scenario, the JCA 1.5 programming model is used to send requests to the application, received responses from it and send back responses to the Web-based caller.
Planning to use optimized local adapters for z/OS