Font Size: a A A

Design And Implementation Of Memory Caching System In Cloud Computing Platform

Posted on:2017-01-20Degree:MasterType:Thesis
Country:ChinaCandidate:R R JinFull Text:PDF
GTID:2308330485484695Subject:Computer technology
Abstract/Summary:PDF Full Text Request
In the cloud computing platform, in order to accelerate the access speed of application in the cloud computing platform, the application of memory cache technology has been very common, the use of memory cache will greatly enhance the response speed of the using of cloud applications.Most of the cloud computing service providers are beginning to use the memorycachesystemintheir cloud computing platform, such as the memory cache system ElastiCacheofAmazon’s cloud computing services AWS.In this thesis, the design of the memory cache system PRCACHE is based on the open source memcached and add afew improvements to it.First, this thesis analyzes the existing problems in the traditional memcached deployment, memcached itself is a centralized, distributed memcached depend on the client.The traditional memcached deployment is not only easy to appear the load balance problem, but also prone to single point failure problem.Based on the analysis of traditional memcached deployment,present the requirementsofthe PRCACHE caching system designed in this thesis, the PRCACHE needs to satisfy the requirementsof high availability,support large-scale concurrency and realize load balancing.According to these two requirements, put forward the overall architecture of PRCACHE cache system,consists of network interface module, request processing module and storage processing module, request processing module is composed of a load balancing module and cache backup module, storage processing module is composed of a data storage module and cache synchronization module.The high availability of cache system is supported by cache backup module and cache synchronization module, large-scale concurrency and load balancing is supported by network interface module andload balancing module.Secondly, based on the requirement analysis of PRCACHE, this thesis carries out a detailed design and implementation of each function module. The network interface module adopts high performance I/O framework library libevent as the user request event handling mechanism, can support large-scaleconcurreny access request. The request processing module isbasedonthecache proxymagent, and the load balancing module is designed using consistent hash algorithm as the load balancing algorithm to deal with the user’s access request, user’s request can evenly allocated to the cluster server, realize the load balancing of PRCACHE. The cache backup module divides the server cluster into master cluster and backup cluster,the data cache between the master and backup cluster always maintain the same, the backup cluster offer cache service when the master cluster server break down, which ensure the high availability of PRCACHE. The data storage module is responsible for the actual storage of user data, using the slab allocator memory management mechanism for memory allocation and recovery. The cache synchronization module is realized by adding modified code in memcached source code, the original memcached does not communicate with each other but now the improved memcached service process makes memcachedserverscando synchronous communication, realizes a master/slave synchronization functioninthe cluster server, the cache synchronization solves the problem of data inconsistency due to accident between clusters, enhance the high availability of PRCACHE. Finally, this thesis makes a comparison test between PRCACHE cache system and traditional memcached deployment, the test results show that the PRCACHE cache system can achieve high availabilityand load balancing, and it works well in large-scale concurreny environment.
Keywords/Search Tags:cloud computing, memory cache, memcached, high availability
PDF Full Text Request
Related items