On concurrency improvements in enterprise SOA middleware
Abstract
SOA is becoming prevalent in enterprise IT environments. As a result, component middleware are adding support for composite web services. Till recent past, most of these middleware were employed in tiered architectures. However, nature of call graphs differs in SOA. In this paper we revisit concurrency and deadlock issues that appear due to hosting SOA applications on middleware with prevalent thread allocation schemes. We propose a novel thread allocation scheme which performs an off-line analysis of web services call graphs and equips containers with essential information. At run-time, containers use this information and do not consult any central point or each other for thread allocation decisions. This makes our approach practical and scalable. We demonstrate, through simulations, that our approach can provide significant throughput improvements when compared with traditional thread allocation schemes.