Font Size: a A A

Boost Based High Performance Tracker Server Design & Implementation And Stress Test

Posted on:2009-06-05Degree:MasterType:Thesis
Country:ChinaCandidate:W XuFull Text:PDF
GTID:2178360278464148Subject:Communication and Information System
Abstract/Summary:PDF Full Text Request
Boost is an open source and highly portable C++ library. It is intended to be widely useful, supporting function binding, smart pointer, various data structures, graph algorithms, string processing, grammar parsing, network programming, and so on. ASIO is part of Boost library which provides developers with an asynchronous I/O model.Tracker server cluster is an important part of a peer to peer application. It traces the resources information held by each peer and provides query services to all peers in the network. As the entry of a peer to peer network, tracker server cluster is required to process much faster and more robust with higher capacity. These features are critical for a tracker server cluster. This thesis analyzes how to design and implement a capacity-scalable tracker server cluster with the library mentioned above.Firstly, from robust aspect, this thesis compares the multi-thread model and the asynchronous I/O model; then from performance view, compares the insertion, deletion, query operations between hash map of STL (Standard Template Library) and multi index container with hashed index of boost library. Finally, Boost with Multi-Index Container library is chosen to establish the mappings between peers and resources; also optimizations are applied considering the fact that the number of resources is greatly larger than the number of users.At last, for the purpose of stress testing and accuracy testing, based on JSON grammar, the thesis suggests a script that supports pattern and expression evaluations, to describe the testing progress, including packets definition, packets sending frequencies, peers'life cycle and all the other necessary parameters needed.
Keywords/Search Tags:Proactor Pattern, Boost Template Library, Multi-Index Container, Asynchronous I/O, Tracker Server, JSON
PDF Full Text Request
Related items