是否把雞蛋放在乙個籃子裡 多雲or單雲的思考

2021-10-05 22:22:58 字數 1550 閱讀 9356

目錄

前言:主題:多雲不是銀彈

優劣分析:

高可用方面:

成本方面:

易用性方面:

功能方面:

企業戰略方面:

總結:本人一直專注於多雲架構的研究,經常與雲原廠人員進行溝通,對單雲和多雲有一些感觸,在這裡與大家分享下。

多雲在很多方面有單雲不具備的優點,所以大約1年前我還一直以為自己堅持的多雲持續交付才是最先進最正確的,但是隨著雲廠商功能的迭代和公司雲架構的不斷演化,漸漸發現了多雲平台的不足。現在不得不重新審視多雲與單雲孰優孰劣。

單雲的高可用靠多az,當某一區出現故障時仍然保證系統的可用性;而多雲是更高形態的高可用,當雲平台整個掛掉時,通過切換流量到另乙個雲平台的方式仍可以保持系統的可用性。

我們都知道雲平台中彈性部分是通過彈性伸縮組來實現的,但當你真正需要擴容的時候不見得一定會申請的到例項,不排除售罄等可能,所以此時如果另一家雲廠商有存貨就可以果斷在另一家去擴容。

你也許會問,彈性伸縮的多az多例項型別可以解決這一問題,但是實測效果並不好。首先,我們服務基本都走內網vpc,多az就需要我去劃分更多的subnet;其次,按量收費的**太高了,所以一般都會提前買預留例項,如果多例項型別開出來的機器不在預留例項的型別裡,相當於花了兩份的錢。

所以在高可用方面多雲完勝單雲。

我是公有雲服務的鐵粉,我的觀點是能在雲上花錢搞定的事情堅決不要自建!

招聘幾個研發,或者弄個外包團隊,搗鼓個一年半載可以做出乙個系統,看似自己搭建的paas或者saas服務要比公有雲的便宜,其實從價效比上來講一點都不划算。

首先,調頭很難。自己搭建那就是華山一條路走到黑,無論是人員還是技術那都是重資產了,即便做出來坨屎也得含淚吃完;而公有雲基本都是按量收費,用一下不爽就分道揚鑣。

其次,就算你做出來的正好是你想要的功能,但是你想要的就是大家想要的,公有雲早晚會有這部分功能,乙個人再牛也幹不贏乙個團隊,乙個團隊再牛也幹不贏乙個廠。

以上只是為了說明優先選擇用saas服務的多雲平台,而天下沒有免費的午餐,多雲saas服務需要交付額外的費用,那麼多雲一定會帶來成本增加麼?未必!

多雲意味著你可以有更多的選擇,你可以選擇更廉價的雲廠商,或者相同的錢你可以選擇效能更好的雲廠商,這個就有點像「長木桶原理」,在購買例項上有更多的選擇權。

所以在搭建成本方面,多雲與單雲不好說哪個更好。

注意,這一點將會成為放棄多雲的核心原因。多雲可以解除與雲廠商的繫結,因為你的運維人員和交付系統在技術和技能上具備了這個能力,用誰家的雲資源都ok,企業在與雲廠商的談判中會有更多的籌碼。

企業級使用者都會有雲廠商的大客戶經理跟著,而且用量越大折扣也會更大,把用量分攤到多家雲上就拿不到這麼大的折扣了。(**戰除外)

所以在企業戰略方面多雲略優於單雲。

以上分析彙總到一張表:

對比項多雲

單雲高可用

完勝完敗

成本不好說

不好說易用性

小勝略敗

功能完敗

完勝企業戰略

小勝略敗

多雲思路很好,可以催生更高意識形態的產品,老闆們更喜歡,但是落地太難,功能上存在短木桶效應,嚴重依靠研發投入和雲廠商api質量。

把ffmpeg庫放在乙個動態庫里

其實生成單個動態庫版本比生成多個動態庫的版本還要簡單,就只要乙個 config.sh 就可以搞定,裡沃特不敢有保留,現在分享給大家。具體該啟用和禁用哪些自己再另行修改。1.首先建立目錄 ffmpeg,然後解壓 ffmpeg 1.2 到 ffmpeg 目錄正面 tar xvf ffmpeg 1.2.1...

python 經驗 把全域性變數放在乙個類中

注 紅色是我增加的注釋 add by zhj 其實python中的import,from import語句是建立新的同名變數指向引入的模組和模組屬性,這也就解釋了下面的情況。我們應盡量不用全域性變數,比如當乙個模組中的兩個函式要用同乙個變數時,我們可以嘗試把這兩個函式寫在乙個類中,而該變數定義 成類...

判斷乙個點是否在乙個多邊形裡

判斷乙個點是否在乙個多邊形裡 一開始以為是個挺難的問題,但google了一下之後發現其實蠻簡單,所用到的演算法叫做 ray casting algorithm 中文應該叫 光線投射演算法 這是維基百科的描述 維基百科 簡單地說可以這麼判斷 從這個點引出一根 射線 與多邊形的任意若干條邊相交,累計相交...