Is it possible to achieve a Client Side Estimation of a Remote Service Execution?
Many use cases, concerning the monitoring and controlling of real physical instruments, demand deep interaction between users and services that virtualize the access to such instruments/devices. In addition, in order to realize high interoperable solutions, SOA-based Web/Grid Service technologies must be adopted. When the access to one of these services is performed via internet using a Web Service call, the remote invocation time becomes critical in order to understand if an instrument can be controlled properly, or the delays introduced by the wire and the serialization/ deserialization process are unacceptable. This paper thus presents methodologies and algorithms, based on a 2k factorial analysis
and a Gaussian Majorization of previous service execution times, which enables the estimation of a generic remote method execution time. Furthermore it suggests three different software architectures, where the developed algorithms and methodology could be integrated in order to automatically profile the end-to-end service. It is worth noting that our proposals are validated using suitable benchmarks and extensive tests coming out from a real (not simulated) environment. In addition, the outcome of this paper have been used in the realization of a service for remote control, monitor, and manage of a pool of instruments/devices.
Key words: Web Service, Quality of Service, QoS, Grid, Cloud Services, Response Time
In this paper you will understand the state of the art on Quality of Service in today digital services with particular attention to Web Services. In this scenario, we proposes a set of solutions that enable a remote service invocation time to be predicted in a general scenario. The contribution of this paper can be divided in three different parts:
- Section 3 formalizes the problem while Sections 5 and 5.1 validate this formalization by providing a dataset for web service QoS study. In particular, the dataset consists of 2304000 samples (of 9 significant values each) organized in 2304 different tests.
- In the second part of this paper (Section 4, 6, and 7) we analyze the collected dataset in a more exhaustive way. Two variants of a methodology that utilizes a Gaussian approximation of the dataset distributions, in combination with a regression model of the key factors that influence the average and the standard deviation, have been developed in Section 4.
- Then, in Section 6 our estimators are validated with experimental results in several scenarios. In the last part of this paper (Section 7), we propose three different software architectures that can utilize the developed methodologies and algorithms. It is worth noting that the presented solutions have been already adopted in a Grid context during the design and implementation of our IE
We have also experienced that in case of server overload, the number of deadline misses increases. This suggests a possible approach for an automatic organization of the clients that balances the servers’ load, and that could be exploited to solve the use cases mentioned in the introduction of this paper. If the number of deadline misses is greater than the expected
ones, the server machine is probably overloaded. So clients could/should decide to use a different machine, in which an identical copy of the invoked service is deployed.
Full article available at this link.
Your help in sharing the idea is very welcome!Client Side Estimation of a Remote Service Execution. #Webseries #RealTime (sort of) #CloudComputing #API #APIs #programming #SoftwareEngineering Click To Tweet
Cite this paper as:
F. Lelli, G. Maron and S. Orlando. Client Side Estimation of a Remote Service Execution, 15th Annual Meeting of the IEEE International Symposium on Modelling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS), Istanbul, Turkey October 2007