Overview of CORBA Services

Transaction Service

• The Transaction Service supports multiple transaction models, including the flat (mandatory in the specification) and nested (optional) models.
• The Object Transaction Service supports interoperability between different programming models. For instance, some users want to add object implementations to existing procedural applications and to augment object implementations with code that uses the procedural paradigm. To do so in a transaction environment
requires the object and procedural code to share a single transaction.
• Network interoperability is also supported, since users need communication between different systems, including the ability to have one transaction service interoperate with a cooperating transaction service using different ORBs.
• The Transaction Service supports both implicit (system-managed transaction) propagation and explicit (application-managed) propagation. With implicit propagation, transactional behavior is not specified in the operation's signature.
With explicit propagation, applications define their own mechanisms for sharing a common transaction.
• The Transaction Service can be implemented in a TP monitor environment, so it
supports the ability to execute multiple transactions concurrently, and to execute
clients, servers, and transaction services in separate processes.

Concurrency Control Service

• The Concurrency Control Service enables multiple clients to coordinate their access to shared resources. Coordinating access to a resource means that when multiple, concurrent clients access a single resource, any conflicting actions by the clients are reconciled so that the resource remains in a consistent state.
• Concurrent use of a resource is regulated with locks. Each lock is associated with a single resource and a single client. Coordination is achieved by preventing multiple clients from simultaneously possessing locks for the same resource if the client's activities might conflict. Hence, a client must obtain an appropriate lock before accessing a shared resource. The Concurrency Control Service defines several lock modes, which correspond to different categories of access. This variety of lock modes provides flexible conflict resolution. For example, providing different modes for reading and writing lets a resource support multiple concurrent clients on a read-only transaction. The Concurrency Control Service also defines Intention Locks that support locking at multiple levels of granularity.

<<  BACK     NEXT>>

 

Copyright@ 2001 QualiTech Experts Ltd. All rights reserved. Last 27/02/03