當(dāng)前,云服務(wù)的市場(chǎng)營(yíng)銷包括從內(nèi)部IT平穩(wěn)過(guò)渡到完美的、智慧無(wú)限的云,解決所有的IT問(wèn)題或者至少是把IT問(wèn)題外包出去。所有云廠商的演示中包括了一些圖表,用于展示用戶的演進(jìn)過(guò)程。更高層次的外包趨勢(shì)必然是向上和向右的。從云那兒買基礎(chǔ)設(shè)施嗎(IaaS)?很好。購(gòu)買全新的平臺(tái)(PaaS)?那更好了!
從云那兒購(gòu)買整個(gè)軟件堆棧?那是最好了!
還要承認(rèn)改變并非總代表進(jìn)步。 革新通常需要布道者促使主流用戶采用。但當(dāng)我們欽佩云說(shuō)客的熱情時(shí),現(xiàn)在,我熱愛云計(jì)算,我個(gè)人以及工作中經(jīng)常使用云計(jì)算。對(duì)開發(fā)人員、開始建立新應(yīng)用的專業(yè)人士、對(duì)于需要快速擴(kuò)展以及無(wú)告警產(chǎn)生的服務(wù)運(yùn)營(yíng)人員,對(duì)于需要遠(yuǎn)程訪問(wèn)數(shù)據(jù)或者應(yīng)用的員工以及很多其他用例來(lái)說(shuō),云有眾多不可替代的優(yōu)勢(shì)。
然而,很多重要的IT特性無(wú)法通過(guò)外包實(shí)現(xiàn)魔法般的改進(jìn)。實(shí)際上,很多特性下降了—有些下降令人擔(dān)憂。
置身云中
前面提及的關(guān)注點(diǎn)促使IT考慮購(gòu)買彈性云基礎(chǔ)設(shè)施。你可以擴(kuò)展到盡可能多的服務(wù)器,然后縮小規(guī)模,然后再次擴(kuò)展—根據(jù)心情變化資源的數(shù)量。但這些服務(wù)器具備彈性嗎?你可以修改CPU數(shù)量、內(nèi)存大小或者分配的其他資源嗎?這好像不行。
然后你從云供應(yīng)商那獲得了保證,也有與在線運(yùn)行時(shí)間、延遲以及事務(wù)一致性相關(guān)的API。這通常會(huì)忽略清晰的服務(wù)級(jí)目標(biāo)而且?guī)缀醪话ㄓ卜?wù)級(jí)協(xié)議——這一切脆弱得令人難以置信。99.9%的在線運(yùn)行時(shí)間?在十年前這是一個(gè)很棒的目標(biāo),但在2014年卻只能達(dá)到?jīng)]有吸引力的三個(gè)九?經(jīng)營(yíng)良好的企業(yè)立刻否定了該目標(biāo)。遠(yuǎn)程辦公的企業(yè)往往希望業(yè)務(wù)連續(xù)性達(dá)到4個(gè)、5個(gè)或者更多個(gè)9。
或者考慮記錄數(shù)據(jù)的云API。甚至很難得到可靠的目標(biāo)指標(biāo)。當(dāng)你這么做時(shí),通常會(huì)把組織弄糊涂,像“大多數(shù)會(huì)話在秒級(jí)提交。”幾乎所有的商業(yè)數(shù)據(jù)庫(kù)系統(tǒng)以及企業(yè)數(shù)據(jù)處理中間件都會(huì)在秒級(jí),有時(shí)是在微秒甚至是納秒級(jí)進(jìn)行大量交易,尤其是針對(duì)大量事務(wù)卷比如HFT進(jìn)行調(diào)整過(guò)的場(chǎng)景下。
因?yàn)槭歉叨确植嫉挠?jì)算,讓我們打一些折扣并說(shuō)“幾秒鐘”已經(jīng)夠精確并足夠快了。即使在該標(biāo)準(zhǔn)下,仍舊會(huì)對(duì)在幾秒鐘內(nèi)沒(méi)有提交的會(huì)話感到困惑。大多數(shù)云服務(wù)擁抱了“最終一致性”,這意味著你對(duì)會(huì)話何時(shí)會(huì)最終提交沒(méi)有明確的概念。幾分鐘?一個(gè)小時(shí)?更久?并沒(méi)有指定。我了解真實(shí)的云服務(wù)偶爾會(huì)在一個(gè)小時(shí)后更新—有很多知名的服務(wù)提交事務(wù)并無(wú)順序而且會(huì)在數(shù)分鐘之后完成。
使用大多數(shù)API,無(wú)法了解最新的數(shù)據(jù)什么時(shí)候到來(lái)。你必須一直輪詢,與你看到的數(shù)據(jù)進(jìn)行對(duì)比然后判斷是否有新數(shù)據(jù)出現(xiàn)。對(duì)于習(xí)慣于穩(wěn)固、可靠的兩階段提交,“最終一致性”聽起來(lái)更像是“不一致”。
這和二三十年前的主流并發(fā)性保證中間件提供的功能類似。但在云計(jì)算的世界中,這非但不可笑反而是最先進(jìn)的。對(duì)于高度分布、尤其是可擴(kuò)展的架構(gòu),這種機(jī)制無(wú)法修改。
我不是說(shuō)這些超大規(guī)模設(shè)計(jì)很糟糕。它們強(qiáng)大的功能的確令人驚訝而且對(duì)于很多有趣以及有價(jià)值的用例非常有用—比如構(gòu)建搜索引擎以及數(shù)據(jù)決策。有時(shí)它們能夠在幾秒鐘內(nèi)以看起來(lái)非常神奇的方式進(jìn)行全局更新。相對(duì)于大規(guī)模以及最低的成本,你不可能擊敗它們。但當(dāng)你在執(zhí)行交易或者希望獲得實(shí)時(shí)控制以及可預(yù)見性,或者需要保證可用性、性能變化不明顯時(shí),大規(guī)模系統(tǒng)往往很容易被大多數(shù)集中式、非云設(shè)計(jì)所超越。
D1Net評(píng)論:
云以及超級(jí)規(guī)模能夠做一些了不起的事兒,這是任何其他方式無(wú)法做到的。然而要在某些方面進(jìn)行妥協(xié)—有些讓步相當(dāng)令人意外,在我們想當(dāng)然的屬性上出現(xiàn)了退步。