Title :
ICOMC: Invocation Complexity Of Multi-Language Clients for Classified Web Services and its Impact on Large Scale SOA Applications
Author :
Lu, Xiaoyi ; Zou, Yongqiang ; Xiong, Fei ; Lin, Jian ; Zha, Li
Author_Institution :
Inst. of Comput. Technol., Chinese Acad. of Sci., Beijing, China
Abstract :
Theoretically, multi-language clients invocating web services is no longer a problem due to XML-based interface descriptions by WSDL, but the reality is not so good. Some implementation level difficulties still exist when invoking web services from clients in different programming languages. These difficulties are caused by involving complex data structures in the service interface, carrying additional information such as WS-security headers in the SOAP messages, missing language features such as Reflection in C/C++ and so on, which make large scale multi-language SOA application development a time-consuming and buggy work. This paper proposes a new complexity ICOMC, short for Invocation Complexity Of Multi-language Clients, to quantify these difficulties, introduces implementation cost and runtime performance metrics for ICOMC, and indentifies three factors dominating the ICOMC: service interface, message context, and language feature. Consequently, the problem is formulated as finding out the correlation of the three factors to ICOMC. To simplify the problem, web services are classified into four categories: SISM, SICM, CISM and CICM according to service interface complexity and message context complexity. Furthermore, micro-benchmark experiments are done in C/C++/Java for all four categories. This paper also takes the GOS System Software of the China National Grid as a real large scale application to implement its C/C++ client APIs and compare them with the original Java APIs. Evaluations based on micro-benchmarks and real application show the correlations between the factors and ICOMC. Our results benefit web service interface designing, appropriate language adoption, and implementation cost / runtime performance estimation.
Keywords :
C++ language; Java; Web services; XML; client-server systems; data structures; programming languages; ubiquitous computing; C++; ICOMC; Java; SOAP messages; WS security headers; WSDL; Web services; XML based interface; complex data structures; cost performance estimation; interface complexity; large scale SOA applications; message context complexity; micro benchmark experiments; multilanguage clients invocation complexity; programming languages; runtime performance estimation; runtime performance metrics; Application software; Computer languages; Context-aware services; Costs; Data structures; Java; Large-scale systems; Runtime; Service oriented architecture; Web services; CICM; CISM; ICOMC; Language Feature Complexity; Message Context Complexity; SICM; SISM; Service Interface Complexity; Web Service Classification;
Conference_Titel :
Parallel and Distributed Computing, Applications and Technologies, 2009 International Conference on
Conference_Location :
Higashi Hiroshima
Print_ISBN :
978-0-7695-3914-0
DOI :
10.1109/PDCAT.2009.74