新聞中心
探尋分布式系統(tǒng)中的架構(gòu)學(xué)問
譯文
作者:核子可樂譯 2016-08-12 15:17:40
服務(wù)器
分布式 在處理分布式系統(tǒng)時,單純利用容器構(gòu)建服務(wù)還遠(yuǎn)遠(yuǎn)不夠。我們需要考量架構(gòu)方面的選擇,并利用正確工具加以協(xié)助。

創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站制作、成都做網(wǎng)站、建德網(wǎng)絡(luò)推廣、微信平臺小程序開發(fā)、建德網(wǎng)絡(luò)營銷、建德企業(yè)策劃、建德品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供建德建站搭建服務(wù),24小時服務(wù)熱線:18980820575,官方網(wǎng)址:www.cdcxhl.com
在處理分布式系統(tǒng)時,單純利用容器構(gòu)建服務(wù)還遠(yuǎn)遠(yuǎn)不夠。我們需要考量架構(gòu)方面的選擇,并利用正確工具加以協(xié)助。
應(yīng)用程序架構(gòu)正由大型整體時代朝著分布式設(shè)計模式推進(jìn)。這一趨勢中的核心驅(qū)動因素之一,在于云計算及其極為可觀的規(guī)?;萘康某霈F(xiàn)。對于已經(jīng)習(xí)慣了構(gòu)建并管理整體式應(yīng)用的企業(yè)而言,這段轉(zhuǎn)型之旅要求大家重新學(xué)習(xí)部分舊有設(shè)計技術(shù)并配合一系列新型模式。下面,我們將一同了解轉(zhuǎn)向分布式應(yīng)用模式時需要掌握的那些架構(gòu)學(xué)問。
·調(diào)度/編排管理: 從管理數(shù)百個實例到管理數(shù)千個實例,我們需要有能力以無縫化方式跨越各主機對服務(wù)實例/容器進(jìn)行編排/調(diào)度。為了應(yīng)對這一規(guī)模擴展,工作負(fù)載的調(diào)度與編排成為實現(xiàn)分布式系統(tǒng)的重要前提。Docker Swarm、Kubernetes、Mesos以及Marathon等工具正是這一領(lǐng)域的領(lǐng)先代表。
·服務(wù)發(fā)現(xiàn)/注冊:基于容器的服務(wù)不斷上線與下線,因此我們需要一套管理機制進(jìn)行服務(wù)的注冊/注銷并在運行時當(dāng)中發(fā)現(xiàn)服務(wù)端點。Consul、Zookeeper、etcd、Confd以及Eureka等產(chǎn)品都能夠很好地完成這項任務(wù)。其中大多數(shù)產(chǎn)品還支持將輸入流量在各服務(wù)實例之間進(jìn)行負(fù)載均衡。
·系統(tǒng)狀態(tài)管理/集群管理:隨著集群規(guī)模的擴張,我們需要對集群的系統(tǒng)狀態(tài)進(jìn)行管理,具體包括各服務(wù)的服務(wù)資源、實例數(shù)量、主機位置以及負(fù)載內(nèi)容等等。要實現(xiàn)這一目標(biāo),大家需要利用集群管理工具追蹤系統(tǒng)狀態(tài)。這類方案選項包括Docker Swarm Agents、Kubernetes Nodes/Masters、Mesos Slaves以及Containership等等。
·數(shù)據(jù)存儲:容器存儲具有臨時性特征,意味著任何存在時長高于容器生命周期的數(shù)據(jù)都必須以外部方式持久存儲。Docker Volume Plugin、Flocker、Kubernetes Persistent分卷等都是解決此類問題的理想選項。
·網(wǎng)絡(luò):由于各容器運行在不同的進(jìn)程當(dāng)中,因此我們有必要管理并隔離各服務(wù)之間的訪問。由于多套容器可運行在同一主機之上,因此為了安全地共享網(wǎng)絡(luò)資源,我們需要進(jìn)行容器隔離以建立安全分組。同樣的,各容器還需要發(fā)現(xiàn)托管于其它主機之上的服務(wù),并利用簡單模式進(jìn)行訪問。Flannel、Weaveworks以及Calico在這一領(lǐng)域表現(xiàn)出色。
·監(jiān)控/審計/記錄:面對成千上萬套運行中的容器,對其進(jìn)行監(jiān)控/審計/記錄顯然不是件容易的事。數(shù)據(jù)/日志記錄需要從各容器中提取出來加以分析。在這方面,Loggly、Fluentd、log entries、datadog以及ELK堆棧都是很好的選擇。
除了這些,我們在構(gòu)建分布式應(yīng)用時還需要考慮容器系統(tǒng)與容器運行時等問題。另外,應(yīng)用運行時、部署管理、DNS、安全性、SSO/OAuth、API Gateways、斷路機制、性能/可擴展模式等亦屬于應(yīng)當(dāng)關(guān)注的重點議題。
當(dāng)前題目:探尋分布式系統(tǒng)中的架構(gòu)學(xué)問
當(dāng)前鏈接:http://www.5511xx.com/article/cdoochj.html


咨詢
建站咨詢
