Distributed Management of Concurrent Web Service Transactions
Business processes involve dynamic compositions of interleaved tasks. Therefore, ensuring reliable transactional processing of Web services is crucial for the success of Web service-based B2B and B2C applications. But the inherent autonomy and heterogeneity of Web services render the applicability of conventional ACID transaction models for Web services far from being straightforward. Current Web service transaction models relax the isolation property and rely on compensation mechanisms to ensure atomicity of business transactions in the presence of service failures. However, ensuring consistency in the open and dynamic environment of Web services, where interleaving business transactions enter and exit the system independently, remains an open issue. In this paper, we address this problem and propose an architecture that supports concurrency control on the Web services level. An extension to the standard framework for Web service transactions is proposed to enable detecting and handling transactional dependencies between concurrent business transactions. We also present an optimistic protocol for concurrency control that can be deployed in a fully distributed fashion within the proposed architecture. We also empirically evaluate the performance of the proposed solutions in terms of throughput and response time.
concurrency transaction processing software architectures