分布式角色協(xié)同控制系統(tǒng)stage的設計與實現(xiàn)
發(fā)布時間:2017-10-17 19:01
本文關鍵詞:分布式角色協(xié)同控制系統(tǒng)stage的設計與實現(xiàn)
更多相關文章: 分布式系統(tǒng) 同步 COM組件 Proactor RPC
【摘要】:隨著互聯(lián)網(wǎng)的發(fā)展以及移動互聯(lián)網(wǎng)時代的到來,各應用領域如電子商務、網(wǎng)絡社交、搜索引擎提供商等都積累了大量的數(shù)據(jù)并且迫切期望對已有的數(shù)據(jù)進行高效的分析以產(chǎn)出學術(shù)和商業(yè)價值,信息技術(shù)的發(fā)展進入大數(shù)據(jù)處理時代。傳統(tǒng)的單機串行化的數(shù)據(jù)處理方式已無法滿足日益增長的數(shù)據(jù)處理要求,分布式技術(shù)越來越受到人們的關注。而同步是分布式系統(tǒng)中一個重要的概念,代表了分布式系統(tǒng)中各個單機節(jié)點之間協(xié)同工作的一種方式。與單機系統(tǒng)不同,由于分布式系統(tǒng)中各個節(jié)點之間的網(wǎng)絡通信是不穩(wěn)定的,如何保證分布式環(huán)境中通信錯誤造成的影響不至于讓整個分布式系統(tǒng)紊亂掉,就是同步機制要研究的課題,也是任何分布式系統(tǒng)的基礎。本文將闡述的stage,就是一個提供了分布式同步服務的系統(tǒng)。文章將分幾部分,對國內(nèi)外相關技術(shù),stage的功能需求,設計和實現(xiàn)進行詳細的敘述。stage自底向上,層層依賴,主要由四大子系統(tǒng)構(gòu)成。第一層是基于COM的組件框架OCF,基于這個框架的編寫和使用規(guī)范,可以很容易地開發(fā)出高可重用,高可擴展的組件應用;第二層是基礎網(wǎng)絡通信引擎,它是基于Proactor的異步事件驅(qū)動模型的實現(xiàn),使用了多線程下的I/O復用模型,充分利用了服務器硬件資源,提高了系統(tǒng)吞吐量;第三層是類RPC的消息通信組件,它使用了ProtoBuf提供的序列化反序列化機制以及自動生成相關代碼的生成器,并集成了第二層的網(wǎng)絡通信引擎,讓開發(fā)者只需編寫簡單的IDL文件,即可通過自動生成代碼向消息通信組件中添加新的服務;第四層則是stage的應用實現(xiàn),它采用了Raft算法和類POSIX Thread的接口,并作為一種服務添加到了消息通信組件中,為用戶提供了同步服務。stage系統(tǒng)在Free BSD下使用C++進行編寫,采用了完全異步的模型,并使用回調(diào)的方式完成業(yè)務邏輯,使得系統(tǒng)中的阻塞點盡可能的少,提高了系統(tǒng)的效率。經(jīng)測試,stage在功能和性能上能夠滿足用戶在分布式系統(tǒng)中所需同步服務的需求。
【關鍵詞】:分布式系統(tǒng) 同步 COM組件 Proactor RPC
【學位授予單位】:電子科技大學
【學位級別】:碩士
【學位授予年份】:2016
【分類號】:TP311.52
【目錄】:
- 摘要5-6
- ABSTRACT6-12
- 第一章 緒論12-16
- 1.1 選題背景和意義12
- 1.2 國內(nèi)外研究現(xiàn)狀12-14
- 1.3 課題研究內(nèi)容14
- 1.4 論文組織結(jié)構(gòu)14-15
- 1.5 本章小結(jié)15-16
- 第二章 理論基礎及相關技術(shù)16-35
- 2.1 COM組件16-18
- 2.2 Boost Asio18-20
- 2.3 RPC20-21
- 2.4 ProtoBuf21
- 2.5 分布式一致性算法21-27
- 2.5.1 Paxos22-24
- 2.5.1.1 角色22-23
- 2.5.1.2 流程23-24
- 2.5.2 Raft24-27
- 2.5.2.1 角色24-25
- 2.5.2.2 子問題25
- 2.5.2.3 流程25-26
- 2.5.2.4 Leader Election26
- 2.5.2.5 Log Replication26-27
- 2.5.2.6 安全性27
- 2.6 典型的分布式同步系統(tǒng)27-29
- 2.6.1 Chubby27-29
- 2.6.2 Zookeeper29
- 2.7 OCF即相關子系統(tǒng)介紹29-33
- 2.7.1 OCF庫設計原理30-31
- 2.7.2 基礎網(wǎng)絡通信引擎IoEngine31-32
- 2.7.3 消息通信組件Channel32-33
- 2.8 本章小結(jié)33-35
- 第三章 stage系統(tǒng)需求分析35-39
- 3.1 stage系統(tǒng)設計目標35-36
- 3.1.1 功能需求35-36
- 3.1.2 非功能需求36
- 3.2 stage系統(tǒng)用例圖36-38
- 3.3 本章小結(jié)38-39
- 第四章 stage系統(tǒng)總體設計39-53
- 4.1 總體設計思路39-40
- 4.2 總體系統(tǒng)框架40-41
- 4.3 模塊設計41-52
- 4.3.1 stage網(wǎng)絡服務模塊設計41
- 4.3.2 Raft算法模塊設計41
- 4.3.3 Mutex管理模塊設計41-47
- 4.3.3.1 mutexInit流程設計42-43
- 4.3.3.2 mutexDestroy流程設計43
- 4.3.3.3 mutexLock流程設計43-44
- 4.3.3.4 mutexTryLock流程設計44-45
- 4.3.3.5 mutexUnlock流程設計45-47
- 4.3.4 Cond管理模塊設計47-51
- 4.3.4.1 condInit流程設計47-48
- 4.3.4.2 condDestroy流程設計48
- 4.3.4.3 condWait流程設計48-49
- 4.3.4.4 condSignal流程設計49-50
- 4.3.4.5 condBroadcast流程設計50-51
- 4.3.5 客戶端模塊設計51-52
- 4.4 本章小結(jié)52-53
- 第五章 stage系統(tǒng)詳細設計與實現(xiàn)53-74
- 5.1 編程環(huán)境53
- 5.2 stage總體模塊設計53-55
- 5.3 底層基礎模塊介紹55-57
- 5.3.1 基礎網(wǎng)絡通信引擎IoEngine55-56
- 5.3.2 消息通信組件Channel56-57
- 5.4 stage網(wǎng)絡服務模塊詳細設計與實現(xiàn)57-65
- 5.4.1 stage網(wǎng)絡協(xié)議58-61
- 5.4.1.1 ServerMessage介紹58-59
- 5.4.1.2 ClientMessgae介紹59-61
- 5.4.2 stage網(wǎng)絡服務模塊61-65
- 5.4.2.1 StagePerformer介紹62-64
- 5.4.2.2 PBHelper介紹64
- 5.4.2.3 其它64-65
- 5.5 Raft算法模塊詳細設計與實現(xiàn)65-66
- 5.6 Mutex管理模塊詳細設計與實現(xiàn)66-67
- 5.7 Cond管理模塊詳細設計與實現(xiàn)67-68
- 5.8 客戶端模塊的詳細設計與實現(xiàn)68-70
- 5.9 重要執(zhí)行流程70-73
- 5.9.1 stage系統(tǒng)啟動流程70-71
- 5.9.2 stage系統(tǒng)內(nèi)部選舉流程71-72
- 5.9.3 客戶端請求操作流程72-73
- 5.10 本章小結(jié)73-74
- 第六章 系統(tǒng)測試74-88
- 6.1 測試環(huán)境74
- 6.2 功能測試74-83
- 6.2.1 Mutex操作相關測試75-78
- 6.2.1.1 mutexInit測試75
- 6.2.1.2 mutexDestroy測試75-76
- 6.2.1.3 mutexLock測試76
- 6.2.1.4 mutexTryLock測試76-77
- 6.2.1.5 mutexUnlock測試77-78
- 6.2.1.6 mutex綜合測試78
- 6.2.2 Cond操作相關測試78-81
- 6.2.2.1 cond Init測試78-79
- 6.2.2.2 condDestroy測試79
- 6.2.2.3 condWait測試79-80
- 6.2.2.4 condSignal測試80
- 6.2.2.5 condBroadcast測試80-81
- 6.2.2.6 cond綜合測試81
- 6.2.3 其它81-83
- 6.3 性能測試83-87
- 6.3.1 網(wǎng)絡傳輸效率測試83-85
- 6.3.1.1 測試方法83
- 6.3.1.2 測試結(jié)果對比與分析83-85
- 6.3.2 吞吐量測試85-87
- 6.3.2.1 測試方法85-86
- 6.3.2.2 測試結(jié)果與對比分析86-87
- 6.4 本章小結(jié)87-88
- 第七章 結(jié)論和展望88-90
- 致謝90-91
- 參考文獻91-94
- 攻碩期間取得的研究成果94-95
【參考文獻】
中國期刊全文數(shù)據(jù)庫 前1條
1 高曙明,何發(fā)智;分布式協(xié)同設計技術(shù)綜述[J];計算機輔助設計與圖形學學報;2004年02期
,本文編號:1050494
本文鏈接:http://sikaile.net/kejilunwen/sousuoyinqinglunwen/1050494.html
最近更新
教材專著