3 research outputs found

    Enhanced web services performance by compression and similarity-based aggregation of SOAP traffic

    Get PDF
    Many organizations around the world have adopted Web services, server farms hosted by large enterprises, and data centres for various applications. Web services offer several advantages over other communication technologies. However, it still has high latency and often suffers congestion and bottlenecks due to the massive load generated by large numbers of end users for Web service requests. Simple Object Access Protocol (SOAP) is the basic Extensible Markup Language (XML) communication protocol of Web services that is widely used over the Internet. SOAP provides interoperability by establishing access among Web servers and clients from the same or different platforms. However, the verbosity of the XML format and its encoded messages are often larger than the actual payload, causing dense traffic over the network. This thesis is proposing three innovative techniques capable of reducing small, as well as very large, messages. Furthermore, new redundancy-aware SOAP Web message aggregation models (Binary-tree, Two-bit, and One-bit XML status trees) are proposed to enable the Web servers to aggregate SOAP responses, and send them back as one compact aggregated message, thereby reducing the required bandwidth and latency, and improving the overall performance of Web services. Fractal as a mathematical model provides powerful self-similarity measurements for the fragments of regular and irregular geometric objects in their numeric representations. Fractal mathematical parameters are introduced to compute SOAP message similarities that are applied on the numeric representation of SOAP messages. Furthermore, SOAP fractal similarities are developed to devise a new unsupervised auto-clustering technique. Fast fractal similarity based clustering technique is proposed with the aim of speeding up the computations for the selection of similar messages to be aggregated together in order to achieve greater reduction

    Implementaci贸n y evaluaci贸n de algoritmos de composici贸n de aplicaciones distribuidas de tiempo real basadas en servicios

    Get PDF
    En el mundo actual en el que vivimos, se han extendido los entornos que trabajan con sistemas que garantizan el cumplimiento de tiempos de respuesta. Hasta ahora, al trabajar con entornos din谩micos, se aplicaba una aproximaci贸n cl谩sica de dise帽o que nos aseguraba unas garant铆as temporales pero que pod铆a implicar un gasto de recursos prohibitivo. Es por esto que se este dedicando un gran esfuerzo investigador para dotar de flexibilidad y dinamismo a sistemas de tiempo real. Este Proyecto Fin de Carrera estudia aquellos trabajos que buscan la aplicaci贸n de t茅cnicas del mundo de la orientaci贸n a servicios a dichos sistemas. En concreto, algoritmos de composici贸n de aplicaciones de tiempo real basados en servicios, centr谩ndonos en dos algoritmos apropiados para dicha composici贸n. Estos algoritmos se implementaron en el lenguaje de programaci贸n Matlab y su estudio condujo a la propuesta de mejora de los mismos. Finalmente, se desarroll贸 una herramienta en Matlab que permit铆a la simulaci贸n y validaci贸n de los distintos algoritmos. --------------------------------------------------------------------------------------------------------------------------------------------------------------------------The current world we are living in, there has been an increase in the amount of application domains where the development of systems with temporal guarantees is required. Until now, when dynamic domains were used, a classic design approximation was implemented, which ensured us such temporal guarantees, but could entail a huge amount of resources expenses. It was this problem that led to a huge research effort aiming to give flexibility and dynamism to real time systems. This Master Thesis studies those researches which propose the use of service oriented techniques in this kind of real time systems. Being more specific, algorithms related to composition of real time applications based on services will be used, paying special attention specifically to two algorithms that are suitable for this scenario. These algorithms are implemented using Matlab's programming language. Their study has aided to propose an improvement of these algorithms. Finally, a Matlab application was developed for simulating and validating all the different algorithms.Ingenier铆a de Telecomunicaci贸

    Towards achieving execution time predictability in web services middleware

    Get PDF
    Web services middleware are typically designed optimised for throughput. Requests are accepted unconditionally and no differentiation is made in processing. Many use the thread-pool pattern to execute requests in parallel using processor sharing. Clusters hosting web services dispatch requests only to balance out the load among the executors. Such optimisations for throughput work out negatively on the predictability of execution. Processor sharing results in the increase of execution time with the number of concurrent requests, making it impossible to predict or control the execution of a request. Existing works fail to address the need for predictability in web service execution. Some achieve a level of differentiated processing, but fail to consider predictability as their main quality attribute. Some give a probabilistic guarantee on service levels. However, from a predictability perspective they are inconsistent. A few achieve predictable execution times, though only in closed systems where request properties are known at system design time. Web services operate on the Internet, where request properties are relatively unknown. This thesis investigates the problem of achieving predictable times in web service executions. We introduce the notion of a processing deadline for service execution, which the web services engine must adhere to in completing the request in a repeatable and a consistent manner. Reaching such execution deadlines by the services engine is made possible by three main features. Firstly a deadline based scheduling algorithm introduced, ensures the processing deadlines are followed. A laxity based analytical model and an admission control algorithm it is based on, selects requests for execution, resulting in a wider range of laxities to enable more requests with overlapping executions to be scheduled together. Finally, a real-time scheduler component introduced in to the server uses a priority model to schedule the execution of requests by controlling the execution of individual worker threads in custom-made thread pools. Predictability of execution in cluster based deployments is further facilitated by four dispatching algorithms that consider the request deadlines and laxity property in the dispatching process. A performance model derived for a similar system approximates the waiting time where requests with smaller deadlines (having higher priority) experience smaller waiting times than requests with longer deadlines. These techniques are implemented in web services middleware in standalone and cluster-based configurations. They are evaluated against their unmodified versions and techniques such as round-robin and class based dispatching, to measure their predictability gain. Empirical evidence indicate the enhancements enable the middleware to achieve more than 90% of the deadlines, while accepting at least 20% of the requests in high traffic conditions. The enhancements additionally prevent the middleware from reaching overloaded conditions in heavy traffic, while maintaining comparable throughput rates to the unmodified versions of the middleware. Analytical and simulation results for the performance model confirms that deadline based preemptive scheduling results in a better balance of waiting times where high priority requests experience lower waiting times while lower priority requests are not over-starved compared to other techniques such as static priority ordering, First-Come-First-Served, Round-Robin and non-preemptive deadline based scheduling
    corecore