国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

論文解讀:Design patterns for container-based distribut

AdolphLWQ / 562人閱讀

摘要:論文認(rèn)為,繼面向?qū)ο缶幊趟I(lǐng)的軟件開(kāi)發(fā)革命之后,如今似乎在分布式系統(tǒng)開(kāi)發(fā)中也發(fā)生著一場(chǎng)相似的革命基于容器化組件構(gòu)建的微服務(wù)架構(gòu)。容器的一大獨(dú)特優(yōu)勢(shì)在于良好的邊界恰好適合應(yīng)用開(kāi)發(fā)的隔離性。這似乎是對(duì)編程藝術(shù)的重申。

這是由Kubernetes創(chuàng)始人發(fā)表的論文,總結(jié)了基于容器的分布式系統(tǒng)的設(shè)計(jì)模式,讓我們來(lái)一覽究竟吧。

論文認(rèn)為,繼OOP(面向?qū)ο缶幊蹋┧I(lǐng)的軟件開(kāi)發(fā)革命之后,如今似乎在分布式系統(tǒng)開(kāi)發(fā)中也發(fā)生著一場(chǎng)相似的革命:基于容器化組件構(gòu)建的微服務(wù)架構(gòu)。

容器的一大獨(dú)特優(yōu)勢(shì)在于:良好的邊界——恰好適合應(yīng)用開(kāi)發(fā)的隔離性。

作者總結(jié)了一些設(shè)計(jì)模式,并且分為三大類(lèi)型:

Single-container management patterns

容器的傳統(tǒng)接口有run(), pause(), stop()

可以有更豐富的接口

“向上看”的視角:metrics, config, logs等,通常用HTTP+JSON來(lái)暴露

“向下看”的視角:lifecycle(提供生命周期回調(diào)鉤子), priority(為了空出資源給高優(yōu)先級(jí)任務(wù),甚至能提前關(guān)掉低優(yōu)先級(jí)任務(wù)),"replicate yourself"(迅速創(chuàng)建一組相同的服務(wù)容器來(lái)應(yīng)對(duì)突發(fā)流量)

接下來(lái)兩類(lèi)都依賴(lài)Pod抽象(Kubernetes有提供),因?yàn)槎忌婕叭萜骶幣帕?,而且已進(jìn)入Sevice Mesh這門(mén)新概念的范圍。

Single-node, multi-container application patterns

多個(gè)容器組成一個(gè)原子單位

Sidecar模式

例如:web server + log collector

前提是容器間能共享“存儲(chǔ)卷”之類(lèi)的資源

為什么要用多容器,而非容器內(nèi)多進(jìn)程?

資源審計(jì)和分配:這點(diǎn)很重要,雖然多進(jìn)程也勉強(qiáng)能做,但多容器做得更成熟

職責(zé)劃分、解耦

重用:如果一個(gè)容器包含多種進(jìn)程,就笨重而難以重用了,小巧的單用途容器更適合重用

故障隔離:重啟一個(gè)容器,比修復(fù)容器內(nèi)的故障進(jìn)程要容易多了

交付隔離:每個(gè)容器能獨(dú)立地升級(jí)/降級(jí)

Ambassador模式

類(lèi)似于OOP的proxy模式

例如:memcache + twemproxy,考慮到本分類(lèi)為單結(jié)點(diǎn)多容器模式,因此twemproxy要和其中1個(gè)memcache部署到同一結(jié)點(diǎn)上

前提是容器間能共享localhost網(wǎng)絡(luò)接口

Adapter模式

例如:統(tǒng)一的metrics接口(JMX,statsd等統(tǒng)一收集到HTTP端點(diǎn))

可以免于修改已有的容器(因?yàn)橐呀?jīng)以容器作為軟件開(kāi)發(fā)的單位了)

Multi-node application patterns Leader election模式

領(lǐng)導(dǎo)者選舉這件事已經(jīng)有很多庫(kù)了,但往往對(duì)編程語(yǔ)言有所限定

容器則對(duì)編程語(yǔ)言中立

容器只需構(gòu)建一次就能重用,高度貫徹了抽象和封裝的原則

Work queue模式

傳統(tǒng)的工作隊(duì)列框架對(duì)編程語(yǔ)言有所限定

實(shí)現(xiàn)了run(), mount()接口的容器,可作為“工作”的抽象

基于此可打造一種通用的工作隊(duì)列框架(可能是Kubernetes的未來(lái)方向)

雖然沒(méi)給例子,但有些類(lèi)似Mesos的可插拔調(diào)度器架構(gòu)

Scatter/gather模式

這樣傳遞請(qǐng)求:client->root->server

root結(jié)點(diǎn)把請(qǐng)求分發(fā)給很多servers,再把它們的響應(yīng)匯總到一起,交給client

例如:搜索引擎,分布式查詢(xún)引擎

多個(gè)leaf容器+1個(gè)merge容器,就能實(shí)現(xiàn)通用的scatter/gather框架(可能也是Kubernetes的未來(lái)方向)

結(jié)語(yǔ)

總之,論文將容器視為軟件開(kāi)發(fā)的一等公民,像OOP的對(duì)象一樣重要,提倡單用途可組合可重用的容器。
這似乎是對(duì)UNIX編程藝術(shù)的重申。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/32940.html

相關(guān)文章

  • 論文解讀Design patterns for container-based distribut

    摘要:論文認(rèn)為,繼面向?qū)ο缶幊趟I(lǐng)的軟件開(kāi)發(fā)革命之后,如今似乎在分布式系統(tǒng)開(kāi)發(fā)中也發(fā)生著一場(chǎng)相似的革命基于容器化組件構(gòu)建的微服務(wù)架構(gòu)。容器的一大獨(dú)特優(yōu)勢(shì)在于良好的邊界恰好適合應(yīng)用開(kāi)發(fā)的隔離性。這似乎是對(duì)編程藝術(shù)的重申。 這是由Kubernetes創(chuàng)始人發(fā)表的論文,總結(jié)了基于容器的分布式系統(tǒng)的設(shè)計(jì)模式,讓我們來(lái)一覽究竟吧。 論文認(rèn)為,繼OOP(面向?qū)ο缶幊蹋┧I(lǐng)的軟件開(kāi)發(fā)革命之后,如今似乎...

    Gemini 評(píng)論0 收藏0
  • Flink 從0到1學(xué)習(xí)—— 分享四本 Flink 國(guó)外的書(shū)和二十多篇 Paper 論文

    摘要:另外,將機(jī)制發(fā)揚(yáng)光大,對(duì)有著非常好的支持。系統(tǒng)也注意到并討論了和的問(wèn)題??偨Y(jié)本文分享了四本相關(guān)的書(shū)籍和一份領(lǐng)域相關(guān)的論文列表篇,涉及的設(shè)計(jì),實(shí)現(xiàn),故障恢復(fù),彈性擴(kuò)展等各方面。 前言 之前也分享了不少自己的文章,但是對(duì)于 Flink 來(lái)說(shuō),還是有不少新入門(mén)的朋友,這里給大家分享點(diǎn) Flink 相關(guān)的資料(國(guó)外數(shù)據(jù) pdf 和流處理相關(guān)的 Paper),期望可以幫你更好的理解 Flink。...

    jollywing 評(píng)論0 收藏0
  • Pythonic “Data Science” Specialization

    摘要:溫習(xí)統(tǒng)計(jì)學(xué)的知識(shí)為更深層次的學(xué)習(xí)做準(zhǔn)備在的演講中說(shuō)就是我們理解但不知道另外的是如何的我在臺(tái)下想對(duì)于那可以理解的我好像都只懂了參考標(biāo)準(zhǔn)高效的流程課程用的是我不想再學(xué)一門(mén)類(lèi)似的語(yǔ)言了我會(huì)找出相對(duì)應(yīng)的和的來(lái)源流程什么是干凈的一個(gè)變 Why The Data Science Specialization 溫習(xí)統(tǒng)計(jì)學(xué)的知識(shí), 為更深層次的學(xué)習(xí)做準(zhǔn)備 Andrew Ng 在 2015 GTC ...

    jasperyang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<