Title Sinchroninis ir asinchroninis užklausų srautų apdorojimas JAVA programavimo kalbos priemonėmis /
Translation of Title Synchronous and asynchronous request stream handling in java.
Authors Blaževič, Pavel
Full Text Download
Pages 100
Abstract [eng] The purpose of this master thesis is to analyze how many of known solutions for request stream handling can be implemented in JAVA programming language. Also, in addition to it, this master thesis analyzes the way those solutions can be implemented using JAVA programming language. There are defined tasks to investigate in the scope of this thesis, which include following: exploration of well known concurrency managing models; analysis of their implementation possibilities in JAVA by designing and creating real working components; their implementation workflow research under various stress loaded conditions and, finally, supply recommendations for optimal parameterization for mentioned component to gain the best possible balance of resource utilization, throughput and latency. There were analyzed basically two types of concurrency managing models in this work, i.e. thread based and two models based on event notification principle, designed using Douglas Schmidt reactor and proactor design patterns. During exploration of JAVA programming language possibilities to implement above mentioned models a special attention was paid to the new input/output system (NIO) which provides synchronous non-blocking input/output operations, whereas to process operations asynchronously there was explored asynchronous execution of input/output operations by using JAVA non-native external AIO4J library created by IBM corporation. In order to perform stress and performance benchmarks for created component that handles stream of requests, a simple Web server was deployed as a component responsible for establishing connections and handling requests. By executing various performance and stress loading scripts on basic and their modified request handling components it was empirically showed that in order to develop high quality component and to achieve optimal performance for it – a server must support static and partially dynamic adaptability features, i.e. possibility to parameterize server by various factors to adjust to probable loading level.
Type Master thesis
Language Lithuanian
Publication date 2014