IT馬洛斯錘子定律 云模型怎么選?
技術世界存在一種趨勢,即假定我們應該使用最新的創新方案解決所有問題。我們通常套用馬洛斯錘子定律來解釋這件事:如果你手握一把錘子,所有問題都好似釘子。云計算也不例外,一切事物都在進入云端,或者至少我們被這樣告知。
為了符合這個隱喻,廠商提供的云計算的任何部分都會成為一把錘子,公司的所有工作負載和應用都會變成釘子。問題在于哪一種分布式模型適合企業的需求,不管是IaaS、PaaS還是SaaS。
IT馬洛斯錘子定律
軟件即服務(SaaS)是一種典型的“自制或外購的對決”決策;如果你可以購買到能夠符合絕大多數需求的服務,那么這就是最經濟適用的云。但是不要讓構建應用的恐懼促使你購買任何不符合業務需求的服務。你的業務流程是企業立足市場的關鍵區別基礎,因此不要讓這些競爭優勢向開箱即用的選擇妥協。
如果在評估了開箱即用選擇后,你確定你的需求最適合的是自定制構建應用,那么下一步就是確定你是否需要云。你的問題是規模性的問題嗎?如果不是,就會有更經濟的方式來解決。如果是,云就是最佳選擇,但是治理或者一些其他外部代理導致的法規或者法律問題就會是你要面臨的問題。
推斷出云就是最適合自定制構建應用的方法后,云廠商的傳統觀點就是為你展示一種二分法的選擇:你必須選擇平臺即服務(PaaS)或者基礎架構即服務(IaaS)。云廠商推薦這種選擇的意圖很明顯,但是如果我們仔細看,會發現這樣并不能套牢客戶。
關于三種可擴展場景:事務處理、數據和地理,即IaaS層,你可以立即抽取數據和地理位置,就像PaaS產品的存儲能力對于谷歌App Engine或者Windows Azure或者Heroku、Cloudbees等都是一樣的。此外,地理分布是云服務的基礎。需要給予執行資源做出選擇,要符合作為軟件應用實現的需求。
但是PaaS產品,比如Windows Azure,都是一個有價值的交易。開發者從低價值的管理功能中得到了自由,放棄了一些細粒度的環境控制。PaaS開發者所工作的個環境都是這項服務所定義的。雖然一個產品可能涉及變更底層環境,但是這種方法在PaaS中不可行。PaaS的經濟價值并非在涉及階段創建基礎架構圖景,因此不必在生產中進行維護。
以一種開放的心態來看,PaaS完全符合大部分云應用的需求。然而,在PaaS中運營應用的有些場景過于復雜,導致實踐起來很困難。對于這樣的場景,IaaS通常更為合適。這項決策的制定必須足夠清晰明了,因為會產生直接的經濟影響。實際上,提供了對立的價值交易:開發者通過接納構建和管理環境的責任,在交換中獲得環境的細粒度控制。這種責任包括設計時間中的上市時間,以及維護和運營領域的持續成本。
所以選擇PaaS的正確率是多少?套用愛因斯坦的名言:你應該使用盡可能多的PaaS,但是不要超出合理性范圍。