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


咨詢
建站咨詢
