Font Size: a A A

Design And Realization Of A High Throughput Server Based On Disruptor Architecture

Posted on:2016-10-30Degree:MasterType:Thesis
Country:ChinaCandidate:Z K LiuFull Text:PDF
GTID:2348330479954327Subject:Software engineering
Abstract/Summary:PDF Full Text Request
With the growth of the number of online users, application servers are undertaking more and more burden, it's very urgent to improve the performance of servers. Improving the architecture of transaction handling is a good way to do this. Recent years, a new architecture called “Disruptor” was put forward. It serves as the core architecture of the fastest trading platform in the world, it's performance has been greatly enhanced. The core advantage of this architecture is to improve business handling ability of single machine, mean while it has low latency and high throughput.This article researches and analyzes the Disruptor, putting forward a conclusion, that to highly take advantage of this architecture, handling speed between each models should not differ too much, or any slowly handling model would lower the handling speed of the whole system. Based on this theory, combined with some successful cases, this article designs a high throughput transaction handling architecture.Based on this design, this article makes proper realizing selection of each model, which is aiming at lowering latency, implements a transaction handling system. This system can be divided into four parts: communication module, request managing module, business logic handling module and result managing module. Communication module takes charge of communicating between clients and servers, meanwhile manages the connections between them. Request managing module gets the request from client,then stores copy of them, writes logs for them and so on. Business logic handling module handles the real logic issues for the requests. Result managing module gets the results from business logic handling module then writes logs for them, and uses http protocol to package the results. At the end of this article, a test report about throughput is put forward, which verifies the high performance of Disruptor. Meanwhile a comparison test is done between the Disruptor model and seda model. The result shows that, when system is divided into many models and the cost of information transporting between each models is high, using Disruptor is better than using seda.
Keywords/Search Tags:Concurrency, Asynchronous model, Event driven, Throughput
PDF Full Text Request
Related items