Font Size: a A A

Design And Implementation Of Distributed Cache System Based On SDN Controller Cluster

Posted on:2018-12-24Degree:MasterType:Thesis
Country:ChinaCandidate:C C PengFull Text:PDF
GTID:2428330545468875Subject:Software engineering
Abstract/Summary:PDF Full Text Request
With the rapid development of cloud computing and virtualization technology,the size of the data center is also expanding.Increasingly complex network requirements and controller cluster size constraints make it impossible for controller cluster to solve complex network problems(high concurrency,high availability,etc.)by simply adding controller servers.Distributed cache exists between the controller system and the database system,the introduction of distributed cache not only ease pressure on the database,but also improve processing speed of the controller cluster,which making the controller more reliable,efficient and stable.The current market on the cache products have their own characteristics,but can not meet the complex system of business needs,such as server-side distributed deployment,integreted with other services(Hibernate,Spring Session,Hadoop),cache system security requirements,distributed code execution and so on.So we should have secondary development of the cache products based on existing product features for satisfy the current business needs of the system.This thesis analyzes the advantages and disadvantages of the two cache products and then uses Infinispan caching technology,which satisfies the above business requirements.But Infinispan has some shortcomings at the same time,as follows:1.High concurrent read requests for the same key create a large number of duplicate network connections and consume network resources when the cache cluster is deployed separately,so a new caching mechanism is needed to resolve the problem.2.The data inconsistency problem is generated when the system is deployed in C/S form.Since the HotRod protocol can not be used to open the transaction remotely.3.Network transmission needs to serialize and deserialize the object,the current system is using Jboss Marshalling,serialized data is too large and serialization is slow,which will reduce network performance.4.The traditional cache algorithm with virtual nodes has lower performance,and the speed is slow wheh the clients query cache,and the hash algorithm will cause the data distribution to be uneven.In order to solve the problems above of Infinispan,following solutions are proposed and the feasibility of theoretical research is verified by simulation experiment.1.The LocalCache sub-module will save the requested cache content in the local memory,to ensure that the next time the same key request directly in the local memory,such mechanism can effectively reduce the network overhead,greatly increasing the performance of cache system.2.The solution proposed in this thesis is to add a unique identifier for the cache entry to ensure data consistency.Generate a unique version number for the cache entry when it was created,the next time to modify or delete the cache entry need to compare version number send by the client the version number in server.If both version number are the same then the cache operation will proceed.3.Kryo combined with Externalizer4J not only can automatically generate serialized files,but also has a specific serializer for different data types,and also can customize the serializer.Such optimization can increase serialization speed and reduce the size of serialized files.4.In this thesis,a segment-based consistency hash algorithm is used to store the mapping information of the server and segments in the list,which improves the speed of search for the server when store data.The MurmurHash algorithm improves the speed of the hash and the data distribution is even more uniform.Finally,the feasibility of the above optimizations is verified by simulation of the design ideas and implementations proposed in this thesis.The simulation results show that optimization schemes can effectively improve the performance of the cache system and solve the problem of cache system scalability,data inconsistency,serialization and cache distribution.
Keywords/Search Tags:SDN, Distributed Cache, Infinispan, Hotrod, Data consistency, Serialization
PDF Full Text Request
Related items