Loading [MathJax]/extensions/MathMenu.js
An Event-based Approach on Automatic Synchronous-to-Asynchronous Transformation of Web Service Invocations | IEEE Conference Publication | IEEE Xplore

An Event-based Approach on Automatic Synchronous-to-Asynchronous Transformation of Web Service Invocations


Abstract:

One of the approaches to increase the performance of Distributed Systems, such as Service Oriented Systems, is the asynchronous invocation of the services. This is applic...Show More

Abstract:

One of the approaches to increase the performance of Distributed Systems, such as Service Oriented Systems, is the asynchronous invocation of the services. This is applicable because in many cases the clients do not need the result immediately and need not be blocked after the invocation. Without this mechanism, a developer should use a set of complex techniques to gain the mentioned performance. However, this procedure is both error-prone and cumbersome for the developers. Also, the state-of-the-art tools and languages which provide asynchronous mechanisms, involve the developers with the details of these invocations, as the mechanism is not transparent in these languages. In this paper, a new approach is proposed which generates an event-based middleware based on the candidate invocations available in the source/initial code. The approach also modifies the initial code to adapt with the middleware. This middleware plays the role of an interface between clients and web services. Using this approach, the invocations are transparent for the developers. This means that the synchronous and asynchronous invocations of web services are done in the same manner from the developer perspective. This is realized by automatic transformation of synchronous invocations to asynchronous ones via the generated middleware. The experimental evaluations show that the approach transforms the invocations successfully. Also, the results show that the performance of the asynchronous invocations are by far better than the synchronous ones.
Date of Conference: 24-25 October 2019
Date Added to IEEE Xplore: 23 January 2020
ISBN Information:

ISSN Information:

Conference Location: Mashhad, Iran
References is not available for this document.

I. Introduction

Calling the services in an asynchronous way in distributed system can increase the performance of the system. This asynchrony is possible if the client does not need the result of the invocation immediately. In this way, the client can continue running in parallel with the service, until the result is returned. This parallelism improves the performance and responsiveness [1], [2]. This general approach can be very useful in service oriented systems, such as web services.

Select All
1.
Q. Mahmoud, I. Andrusiak and M. Altaei, "Toward a reliable service-based approach to software application development", 2018 IEEE 20th Conference on Business Informatics (CBI), vol. 1, pp. 168-177, 2018.
2.
G. Wang, W. Xie, A. J. Demers and J. Gehrke, "Asynchronous large-scale graph processing made easy", CIDR, vol. 13, pp. 3-6, 2013.
3.
H. Lampesberger, "Technologies for web and cloud service interaction: a survey", Service Oriented Computing and Applications, vol. 10, no. 2, pp. 71-110, 2016.
4.
Y. Lin, S. Okur and D. Dig, "Study and refactoring of android asynchronous programming", 2015 30th IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 224-235, 2015.
5.
S. Okur, D. L. Hartveld, D. Dig and A. v. Deursen, "A study and toolkit for asynchronous programming in c#", Proceedings of the 36th International Conference on Software Engineering, pp. 1117-1127, 2014.
6.
D. Dig, "Refactoring for asynchronous execution on mobile devices", IEEE Software, vol. 32, no. 6, pp. 52-61, 2015.
7.
P. Maheshwari, H. Tang and R. Liang, "Enhancing web services with message-oriented middleware", Proceedings. IEEE International Conference on Web Services 2004, pp. 524-531, 2004.
8.
S. Parastatidis, S. Woodman, J. Webber, D. Kuo and P. Greenfield, "Asynchronous messaging between web services using ssdl", IEEE Internet Computing, vol. 10, no. 1, pp. 26-39, 2006.
9.
R. Malhotra, "Java messaging" in Rapid Java Persistence and Microser-vices, Springer, pp. 285-305, 2019.
10.
M. J. Duftler, N. K. Mukhi, A. Slominski and S. Weerawarana, "Web services invocation framework (wsif)", OOPSLA Workshop on Object Oriented Web Services, vol. 194, pp. 49, 2001.
11.
N. Ivaki, N. Laranjeiro and F. Araujo, "A design pattern for reliable http-based applications", 2015 IEEE International Conference on Services Computing, pp. 656-663, 2015.
12.
L. P. Lima and A. Cavalli, "services using corba", Formal Methods for Open Object-based Distributed Systems, vol. 2, pp. 409, 2016.
13.
S. Parsa and V. Khalilpoor, "Automatic distribution of sequential code using javasymphony middleware", International Conference on Current Trends in Theory and Practice of Computer Science, pp. 440-450, 2006.
14.
H. Schwichtenberg, "Asynchronous programming" in Modern Data Access with Entity Framework Core, Springer, pp. 287-293, 2018.
15.
S. R. Paul, K. Chen, A. Hayashi, M. Grossman, V. Sarkar, J. DeVinney, et al., "A unified runtime for pgas and event-driven programming", 4th International Workshop on Extreme Scale Programming Models and Middleware (ESPM2), pp. 46-53, 2018.
16.
B. Belson, J. Holdsworth, W. Xiang and B. Philippa, "A survey of asynchronous programming using coroutines in the internet of things and embedded systems", ACM Transactions on Embedded Computing Systems (TECS), vol. 18, no. 3, pp. 21, 2019.
17.
P. B. S. Raju and P. Govindarajulu, "Performance evaluation of web services in linux on multicore", International Journal of Computer Science & Security (IJCSS), vol. 10, no. 4, pp. 161, 2016.
18.
C. Durmaz, M. Challenger, O. Dagdeviren and G. Kardas, "Modelling contiki-based iot systems" in 6th Symposium on Languages Applications and Technologies (SLATE 2017), Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, 2017.
19.
M. Chavan, R. Guravannavar, K. Ramachandra and S. Sudarshan, "Program transformations for asynchronous query submission", 2011 IEEE 27th International Conference on Data Engineering, pp. 375-386, 2011.
20.
P. Leger and H. Fukuda, "Using continuations and aspects to tame asynchronous programming on the web", Companion Proceedings of the 15th International Conference on Modularity, pp. 79-82, 2016.
21.
K. Gallaba, Q. Hanam, A. Mesbah and I. Beschastnikh, "Refactoring asynchrony in javascript", 2017 IEEE International Conference on Software Maintenance and Evolution (ICSME), pp. 353-363, 2017.
22.
S. Parsa, A. Mehrabi-Jorshary and M. Hamzei, "A new optimization algorithm for program modularization", International Conference on Information Computing and Applications, pp. 293-300, 2010.
23.
M. van Steen and A. Tanenbaum, Distributed systems, 2017.
Contact IEEE to Subscribe

References

References is not available for this document.