Font Size: a A A

Research On Concurrent Access Processing Of Distributed Cache In Multicore Environment

Posted on:2016-03-23Degree:MasterType:Thesis
Country:ChinaCandidate:W J WangFull Text:PDF
GTID:2348330479453421Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
With the rapid development of Internet applications, as a key component of relieving pressure of database, distributed cache plays a more and more important role in server-side. However, with the widespread use of multicore processors, traditional distributed caches have many problems on multicore when facing a great many accesses, such as, lock contention, cache coherence overhead and high concurrent connections process. These problems seriously restricted the expansion of distributed cache in multicore environments, resulting in multicore's parallel computing capacity can not be fully utilized.SKVM,a distributed cache in multicore environment, whose goal is eliminating the problems facing a great many of concurrent access, improving the performance, and realizing extension on multicore. SKVM divides high concurrent access into two steps: high concurrent connection processing and high concurrent data processing. Asynchronous non-blocking mechanism is adopted to improve the efficiency of network I/O, and make use of the concept of distributed computing on shared resources, hash table is split into several independent parts, which we call partitions. Each partition has a designated slave thread which is responsible for all operations on keys that belong to it. Only one thread uses a partition, so no locks are needed for the hash table and the partition's LRU list, which eliminates the synchronization overhead. Consistent hash was adopted as data distribution strategy, which improves the balance and avilability of system. Furthermore, the whole system adopts Half sync/half async model, which ensure the real-time concurrent connection process, and achieve efficient concurrent data processing.The experimental results show that SKVM experiences less cache misses than Memcached, and has higher throughput than Memcached, and scales near linearly with number of cores under any workload.
Keywords/Search Tags:Distributed cache, multicore, lock contention, cache consistency, concurrent connection process
PDF Full Text Request
Related items