學術產出-Theses

Article View/Open

Publication Export

Google ScholarTM

政大圖書館

Citation Infomation

  • No doi shows Citation Infomation
題名 基於Zookeeper服務的對稱式高可靠度電子交易系統架構
Symmetric and High-Available Electronic Trading System Base on Zookeeper
作者 常澤民
Chang, Tse-Min
貢獻者 陳恭
Chen, Kung
常澤民
Chang, Tse-Min
關鍵詞 可靠度
可用度
容錯
Apache Zookeeper
電子交易
協調服務
reliability
availability
fault-tolerant
Apache Zookeeper
electronic commerce
coordination service
日期 2014
上傳時間 3-Feb-2016 12:24:43 (UTC+8)
摘要 隨著電子商務的蓬勃發展,不論是使用者或是服務提供者,對於系統的可靠度(reliability),越來越為重視,從『能提供服務就好』,到要能提供『不間斷的服務』。這中間的轉變,推動了目前許多系統架構或產品運用在電子商務的領域。小從磁碟陣列(RAID)、資料庫鏡像(Database Mirror)、叢集(Cluster)架構,異地備援(Disaster Recovery Site),大到企業永續運作計畫(Business Continuity Planning-BCP)的一環,都在尋求一個高可靠度的電子交易系統。
所謂高可靠度的系統,必須能夠在相對長的時間週期內,系統可以持續運作而不中斷,這個概念,同時也意味著系統異常時的恢復能力,以及容錯的機制。換句話說,就是當系統面臨異常或是災害發生時,如何能在最短的時間內恢復系統的正常運作,繼續提供使用者相同的服務。因此提高系統的可靠度,對使用者的具體意義而言,即是提高其服務的可用度(availability)。
本論文的研究,即運用Apache下自由軟體Zookeeper所提供的協調服務,設計一套透過傳播監控(propagation monitor)來達到容錯機制的對稱式多主機架構,使得系統即使在面對異常狀況發生時,仍能迅速恢復系統應有的功能,提供使用者不間斷的服務。並且利用免費的資料庫管理軟體-MariaDB來儲存及操作資料,以低廉的成本,建置具高可靠度的電子交易系統。
Due to the blooming development of electronic commerce (E-Commerce) , both users and service providers put more and more emphasis on system reliability. Thus uninterrupted service has become the basic requirement of E-Commerce systems, which now have all adopted some highly avaialable system architectures and advanced products such as Redundant Array of Independent Disks (RAID), Database Mirror, Cluster architecture, Disaster Recovery Site(DR Site). Many E-Commerce vendors also prepare Business Continuity Planning(BCP) for a highly reliable electronic trading system.
The so-called high reliability systems must continue to operate without interruption in a relatively long period of time, and this concept also means the requirements of abnormal system resilience and the mechanism of fault tolerance. In other words, when the system is confronted with abnormal situations or disaster occurs, it is critical about how to restore the normal functioning of the system to continue to provide users with the same level of services in the shortest possible time, thereby increasing the reliability of the system in terms of the user`s specific meaning, that is, to improve its service availability.
This thesis applies the coordination service provided by Zookeeper to develop a propagation monitor mechanism and a symmetrical multi-host fault-tolerant system architecture, making the system work even in the face of an abnormal situation. Indeed, the system should be able to quickly restore its functions, providing users uninterrupted service. Besides, we use the free database management software-MariaDB to store and operate the system data. Therefore, we are able to build a low-cost yet highly available electronic trading system.
參考文獻 【1】岱凱技術通報,可靠度網路解決方案-HA Network,檢自
http://www.dimensiondata.com/zh-
TW/Downloadable%20Documents/No_007_高彈性效能網管解決
方案.pdf

【2】Swanky,Operation System study guide,Retrived
Auguest,6,2014,from:
http://www.csie.ntnu.edu.tw/~swanky/os/
chap1.htm#DistributedSystem

【3】Wikipedia,Symmetric multiprocessing,Retrived
May,9,2014 from:http://en.wikipedia.org/wiki/
Symmetric_multiprocessing

【4】Andrew S. Tanenbaum(1993)。作業系統(吳宗穎 譯)。台北:
松崗。(原著初版出版於1993年)

【5】Chris Staff, Introduction to distributed operation
system lecture 17: Introduction to distributed
operation system,Retrieved May,10,2014,from:
http://staff.um.edu.mt/csta1/courses/lectures/
csm202/os17.html

【6】Joe Armstrong(2008)。Erlang程式設計(蔡學鏞 譯)。台北:
碁峰資訊。(原著初版出版於2007年)

【7】ZooKeeper Administrator`s Guide,Retrieved
March,16,2014,from
https://zookeeper.apache.org/doc/trunk/
zookeeperAdmin.pdf

【8】Kazi Farooqui,Luigi Logrippo,Jan de Meer. 1995. The
ISO reference model for open distributed
processing:an introduction. Computer Networks and
ISDN Systems - Special issue on ISO reference model
for open distributed processing.27(8): 1215-1229.

【9】ZooKeeper:A Distributed Coordination Service for
Distributed Applications,Retrived March,13,2014,
from:https://zookeeper.apache.org/doc/trunk/
zookeeperOver.html

【10】Flavio Junqueira,Benjamin Reed,(2013). Zookeeper-
Distributed process coordination,Sebastopol,CA:
O`Reilly Media.

【11】ZooKeeper Programmer`s Guide,Retrieved
March,20,2014,from
https://zookeeper.apache.org/doc/trunk/
zookeeperProgrammers.pdf

【12】ZooKeeper Recipes and Solutions,Retrieved
April,10,2014,from
https://zookeeper.apache.org/doc/trunk/recipes.pdf

【13】Leader Election with Zookeeper,Retrieved
April,20,2014,from
http://techblog.outbrain.com/2011/07/leader-
election-with-zookeeper/

【14】MariaDB,Retrieved Junary,10,2014,from
https://zh.wikipedia.org/wiki/MariaDB

【15】HeidiSQL,Retrieved Junary,10,2014,from
https://mariadb.com/kb/en/mariadb/heidisql/

【16】Endianness, Retrieved Junary,10,2014,from
https://en.wikipedia.org/wiki/Endianness

【17】Linux Inter-Process Communication,Retrieved
March,20,2014,from
http://www.comptechdoc.org/os/linux/programming/
linux_pgcomm.html

【18】The Linux Programmer`s Guide,Retrieved
March,20,2014,from
http://www.tldp.org/LDP/lpg/node16.html#
SECTION00731000000000000000

【19】六標準差,檢自:http://www.mantraco.com.tw/education/
education073.htm
描述 碩士
國立政治大學
資訊科學系碩士在職專班
97971020
資料來源 http://thesis.lib.nccu.edu.tw/record/#G0097971020
資料類型 thesis
dc.contributor.advisor 陳恭zh_TW
dc.contributor.advisor Chen, Kungen_US
dc.contributor.author (Authors) 常澤民zh_TW
dc.contributor.author (Authors) Chang, Tse-Minen_US
dc.creator (作者) 常澤民zh_TW
dc.creator (作者) Chang, Tse-Minen_US
dc.date (日期) 2014en_US
dc.date.accessioned 3-Feb-2016 12:24:43 (UTC+8)-
dc.date.available 3-Feb-2016 12:24:43 (UTC+8)-
dc.date.issued (上傳時間) 3-Feb-2016 12:24:43 (UTC+8)-
dc.identifier (Other Identifiers) G0097971020en_US
dc.identifier.uri (URI) http://nccur.lib.nccu.edu.tw/handle/140.119/81242-
dc.description (描述) 碩士zh_TW
dc.description (描述) 國立政治大學zh_TW
dc.description (描述) 資訊科學系碩士在職專班zh_TW
dc.description (描述) 97971020zh_TW
dc.description.abstract (摘要) 隨著電子商務的蓬勃發展,不論是使用者或是服務提供者,對於系統的可靠度(reliability),越來越為重視,從『能提供服務就好』,到要能提供『不間斷的服務』。這中間的轉變,推動了目前許多系統架構或產品運用在電子商務的領域。小從磁碟陣列(RAID)、資料庫鏡像(Database Mirror)、叢集(Cluster)架構,異地備援(Disaster Recovery Site),大到企業永續運作計畫(Business Continuity Planning-BCP)的一環,都在尋求一個高可靠度的電子交易系統。
所謂高可靠度的系統,必須能夠在相對長的時間週期內,系統可以持續運作而不中斷,這個概念,同時也意味著系統異常時的恢復能力,以及容錯的機制。換句話說,就是當系統面臨異常或是災害發生時,如何能在最短的時間內恢復系統的正常運作,繼續提供使用者相同的服務。因此提高系統的可靠度,對使用者的具體意義而言,即是提高其服務的可用度(availability)。
本論文的研究,即運用Apache下自由軟體Zookeeper所提供的協調服務,設計一套透過傳播監控(propagation monitor)來達到容錯機制的對稱式多主機架構,使得系統即使在面對異常狀況發生時,仍能迅速恢復系統應有的功能,提供使用者不間斷的服務。並且利用免費的資料庫管理軟體-MariaDB來儲存及操作資料,以低廉的成本,建置具高可靠度的電子交易系統。
zh_TW
dc.description.abstract (摘要) Due to the blooming development of electronic commerce (E-Commerce) , both users and service providers put more and more emphasis on system reliability. Thus uninterrupted service has become the basic requirement of E-Commerce systems, which now have all adopted some highly avaialable system architectures and advanced products such as Redundant Array of Independent Disks (RAID), Database Mirror, Cluster architecture, Disaster Recovery Site(DR Site). Many E-Commerce vendors also prepare Business Continuity Planning(BCP) for a highly reliable electronic trading system.
The so-called high reliability systems must continue to operate without interruption in a relatively long period of time, and this concept also means the requirements of abnormal system resilience and the mechanism of fault tolerance. In other words, when the system is confronted with abnormal situations or disaster occurs, it is critical about how to restore the normal functioning of the system to continue to provide users with the same level of services in the shortest possible time, thereby increasing the reliability of the system in terms of the user`s specific meaning, that is, to improve its service availability.
This thesis applies the coordination service provided by Zookeeper to develop a propagation monitor mechanism and a symmetrical multi-host fault-tolerant system architecture, making the system work even in the face of an abnormal situation. Indeed, the system should be able to quickly restore its functions, providing users uninterrupted service. Besides, we use the free database management software-MariaDB to store and operate the system data. Therefore, we are able to build a low-cost yet highly available electronic trading system.
en_US
dc.description.tableofcontents 第一章 緒論 1
1.1、研究背景 1
1.2、研究動機 2
1.3、研究目標 7
1.4、研究成果 7
1.5、論文之限制 8
第二章 相關研究與技術背景 10
2.1、分散式系統的硬體概念(Hardware concept) 10
2.2、分散式系統的通透性(Transparency) 10
2.3、主機的協調-Zookeeper的導入 12
2.3.1、Zookeeper的介紹 12
2.3.2、Zookeeper的Data Model 12
2.3.3、Zookeeper的WATCH機制 14
2.3.4、Zookeeper特性的運用 14
2.3.5、基於Zookeeper服務下的對稱式系統架構 17
2.4、免費的資料庫軟體-MariaDB[14] 18
2.5、資料庫管理視窗化軟體-HeidiSQL[15] 18
第三章 系統架構及組件之設計 20
3.1、對稱式系統架構之設計 20
3.2、系統組件之設計 21
3.2.1、Zookeeper Znode的階層結構及建立模式 21
3.2.2、資料交換格式 27
3.2.3、交易處理程序 30
3.2.4、通訊介面 33
3.2.5、Zookeeper Wrapper-API 35
3.2.6、模擬器 37
第四章 概念性驗證(Proof of Concept) 40
4.1、驗證環境 40
4.2、模擬情境 41
4.2.1、資料共享 41
4.2.2、訊息同步 42
4.2.3、程序監控 44
4.2.4、主機遴選 45
第五章 結論與未來研究方向 48
5.1、結論 48
5.2、未來研究方向 48
參考文獻 50
zh_TW
dc.format.extent 1590344 bytes-
dc.format.mimetype application/pdf-
dc.source.uri (資料來源) http://thesis.lib.nccu.edu.tw/record/#G0097971020en_US
dc.subject (關鍵詞) 可靠度zh_TW
dc.subject (關鍵詞) 可用度zh_TW
dc.subject (關鍵詞) 容錯zh_TW
dc.subject (關鍵詞) Apache Zookeeperzh_TW
dc.subject (關鍵詞) 電子交易zh_TW
dc.subject (關鍵詞) 協調服務zh_TW
dc.subject (關鍵詞) reliabilityen_US
dc.subject (關鍵詞) availabilityen_US
dc.subject (關鍵詞) fault-toleranten_US
dc.subject (關鍵詞) Apache Zookeeperen_US
dc.subject (關鍵詞) electronic commerceen_US
dc.subject (關鍵詞) coordination serviceen_US
dc.title (題名) 基於Zookeeper服務的對稱式高可靠度電子交易系統架構zh_TW
dc.title (題名) Symmetric and High-Available Electronic Trading System Base on Zookeeperen_US
dc.type (資料類型) thesisen_US
dc.relation.reference (參考文獻) 【1】岱凱技術通報,可靠度網路解決方案-HA Network,檢自
http://www.dimensiondata.com/zh-
TW/Downloadable%20Documents/No_007_高彈性效能網管解決
方案.pdf

【2】Swanky,Operation System study guide,Retrived
Auguest,6,2014,from:
http://www.csie.ntnu.edu.tw/~swanky/os/
chap1.htm#DistributedSystem

【3】Wikipedia,Symmetric multiprocessing,Retrived
May,9,2014 from:http://en.wikipedia.org/wiki/
Symmetric_multiprocessing

【4】Andrew S. Tanenbaum(1993)。作業系統(吳宗穎 譯)。台北:
松崗。(原著初版出版於1993年)

【5】Chris Staff, Introduction to distributed operation
system lecture 17: Introduction to distributed
operation system,Retrieved May,10,2014,from:
http://staff.um.edu.mt/csta1/courses/lectures/
csm202/os17.html

【6】Joe Armstrong(2008)。Erlang程式設計(蔡學鏞 譯)。台北:
碁峰資訊。(原著初版出版於2007年)

【7】ZooKeeper Administrator`s Guide,Retrieved
March,16,2014,from
https://zookeeper.apache.org/doc/trunk/
zookeeperAdmin.pdf

【8】Kazi Farooqui,Luigi Logrippo,Jan de Meer. 1995. The
ISO reference model for open distributed
processing:an introduction. Computer Networks and
ISDN Systems - Special issue on ISO reference model
for open distributed processing.27(8): 1215-1229.

【9】ZooKeeper:A Distributed Coordination Service for
Distributed Applications,Retrived March,13,2014,
from:https://zookeeper.apache.org/doc/trunk/
zookeeperOver.html

【10】Flavio Junqueira,Benjamin Reed,(2013). Zookeeper-
Distributed process coordination,Sebastopol,CA:
O`Reilly Media.

【11】ZooKeeper Programmer`s Guide,Retrieved
March,20,2014,from
https://zookeeper.apache.org/doc/trunk/
zookeeperProgrammers.pdf

【12】ZooKeeper Recipes and Solutions,Retrieved
April,10,2014,from
https://zookeeper.apache.org/doc/trunk/recipes.pdf

【13】Leader Election with Zookeeper,Retrieved
April,20,2014,from
http://techblog.outbrain.com/2011/07/leader-
election-with-zookeeper/

【14】MariaDB,Retrieved Junary,10,2014,from
https://zh.wikipedia.org/wiki/MariaDB

【15】HeidiSQL,Retrieved Junary,10,2014,from
https://mariadb.com/kb/en/mariadb/heidisql/

【16】Endianness, Retrieved Junary,10,2014,from
https://en.wikipedia.org/wiki/Endianness

【17】Linux Inter-Process Communication,Retrieved
March,20,2014,from
http://www.comptechdoc.org/os/linux/programming/
linux_pgcomm.html

【18】The Linux Programmer`s Guide,Retrieved
March,20,2014,from
http://www.tldp.org/LDP/lpg/node16.html#
SECTION00731000000000000000

【19】六標準差,檢自:http://www.mantraco.com.tw/education/
education073.htm
zh_TW