[摘要] 本文描述了一个CG树顶端节点集群的设计与实现,主要内容有:
1. 详细阐述了顶端节点集群的设计方案。该方案维持集群节点间的通信,当集群内节点失效时能及时发现;负载均衡器(LB)能够将客户端的请求通过一定的调度策略转发给下面的真实服务器(RS);能够保证所有真实服务器上的数据库的一致性。
2. 实现了一个顶端节点集群的系统原型,技术分析和实验结果表明,该集群系统具有稳定性和高可用性。
3. 搭建了一个测试系统,对客户端的请求进行分析处理,返回客户端需要的信息,并测试顶端节点集群的性能。根据测试结果分析顶端节点和顶端节点集群之间的性能差异,证明设计方案的有效性。
[关键词] 集群 CG树 LVS 顶端节点集群
[Abstract] This paper describes the design and implementation for the top node cluster in CG-Tree. The major contents include:
1. A detail design solution for the top node cluster is described. It can maintain the communications among cluster nodes and detect node faults whenever cluster fails. The load balancer (LB) can forward the client’s request to the real server (RS) by selected strategy. The databases on all real servers are kept consistency.
2. A prototype of the top node cluster is implemented. The technical analysis and experimental result show that the cluster is with stability and highly availability.
3. A test system is built to analyze and process the request from clients, return the required information to clients, and test the performance of the top node cluster. Accorded to the test results, the difference of the performance between the top node and the top node cluster is analyzed to show the effectiveness of the design solution.
[Key words] Cluster, CG-Tree, LVS, Top Node Cluster
目录
第一章 引言
1.1 研究背景
1.1.1 集群技术
1.1.2 CG树简介
1.1.3 系统的提出
1.2 研究工作
1.3 论文结构
第二章 相关实现技术简介
2.1 Socket通信简介
2.2 多线程技术简介
2.3 MySQL数据库简介
第三章 系统设计
3.1 整体结构
3.1.1 整体结构的设计
3.1.2 与LVS的比较
3.2 心跳的设计
3.3 数据库一致性的保持
3.4 调度策略的设计
3.4.1 轮转调度
3.4.2 源地址哈希调度
3.4.3 加权轮转调度
第四章 系统实现
4.1 LB模块的实现
4.1.1 LB模块的主要数据结构
4.1.2 LB模块的接口
4.1.3 LB的启动流程
4.2 RS模块的实现
4.2.1 RS模块的主要数据结构
4.2.2 RS模块的接口
4.2.3 RS的启动流程
4.3 数据库连接池的实现
4.3.1 数据库连接池的数据结构
4.3.2 数据库连接池的接口
第五章 实验及其结果分析
5.1 实验环境
5.2 实验测试与分析
5.2.1 丢包率测试
5.2.2 顶端节点性能测试
5.2.3 顶端节点集群性能测试
5.2.4 数据库一致性测试
5.2.5 数据库更新与查询综合测试
第六章 总结与展望
6.1 工作总结
6.2 课题展望
致谢语
参考文献