原創(chuàng):萬金 來自思特沃克洞見?發(fā)表于2017年8月3日 估計閱讀時間6分鐘
作者簡介
萬金
ThoughtWorks 高級顧問
10年+知名外企與中國企業(yè)的IT從業(yè)經(jīng)驗牺堰,包括IBM士修,華為章贞,中興备埃,Thomson. 具有7年云計算相關(guān)經(jīng)驗尼桶,多系統(tǒng)的研發(fā)和運維經(jīng)驗节槐,熟練掌握敏捷和DevOps方法論和實踐搀庶,具有軟件研發(fā)生命周期工具與流程改進豐富經(jīng)驗拐纱。《DevOps實施手冊:在多級IT企業(yè)中使用DevOps》譯者
什么樣的技術(shù)會帶來生產(chǎn)力的極大提升哥倔?技術(shù)含量是否與生產(chǎn)力提升成正比關(guān)系秸架?
帶著問題,我們先看一個例子:在工業(yè)革命時期咆蒿,瓦特用于“改良”蒸汽機的技術(shù)东抹,就是極大提升效率的技術(shù)。
這里有一個誤解沃测,有人認為瓦特發(fā)明了蒸汽機缭黔。其實不然,瓦特只是改良了紐卡門蒸汽機蒂破,通過橡膠增加密閉性同時優(yōu)化機械結(jié)構(gòu)馏谨,使得原本只能用于提水的笨重機器,變得能被廣泛應(yīng)用附迷,為第一次工業(yè)革命的興起奠定了重要基礎(chǔ)惧互。
從上面的例子可以看出技術(shù)含量的高低與帶來生產(chǎn)力的大小并沒有直接關(guān)系。
傳奇的集裝箱
我們來看另外一個有趣的故事喇伯,希望你能從中得到啟發(fā)壹哺。那就是改變運輸業(yè)、對制造業(yè)有著深遠影響的一項革命性技術(shù)——集裝箱(英文container艘刚,你沒看錯,它的名字和現(xiàn)在火的一塌糊涂的“容器技術(shù)”同名 )截珍。
說到集裝箱不能不提馬爾科姆·麥克萊恩(1915—2001)攀甚,20世紀四十年代美國一家運輸公司的老板,由于改造(改造不是發(fā)明)了集裝箱岗喉、提高了集裝箱的便利性秋度,推動了整個運輸行業(yè)的巨大變革,而被尊稱為“集裝箱運輸之父”钱床。
那么問題來了:改造蒸汽機也許有些技術(shù)含量荚斯,但是技術(shù)含量連罐頭都不如(抽真空和密封技術(shù))的集裝箱怎么可能有這么大的影響呢?
(集裝箱之父麥克萊恩:改造不僅限于集裝箱本身查牌,還包括港口和貨輪等運輸環(huán)節(jié))
我們知道工業(yè)社會最重要的競爭來自于節(jié)約成本事期,如果一個技術(shù)可以節(jié)省95%的成本就相當(dāng)于帶來20倍的效率提升。這種技術(shù)可以說是顛覆性的纸颜,而集裝箱就是這樣的技術(shù)兽泣。
麥克萊恩在紐約港第一次做的集裝箱運輸實驗就實現(xiàn)了20倍的效率提升:使用集裝箱運輸啤酒,將每噸啤酒的運輸成本從4美金變成20美分胁孙。
過程是這樣的:從啤酒工廠把啤酒裝入集裝箱開始唠倦,通過陸路轉(zhuǎn)海路運輸?shù)侥康牡爻屏郏∪チ斯S到陸路運輸、再到海洋運輸?shù)闹虚g人力搬運過程稠鼻,因此從工廠到碼頭的裝卸時間大大縮短冈止,由數(shù)天壓縮到數(shù)小時,從而使得美國到歐洲的貨運時間足足減少了4周候齿。并且由于集裝箱的堆疊使得每一艘船只的儲運量比以前提高了6倍熙暴。
在傳統(tǒng)運輸過程,貨物沒有統(tǒng)一的包裝標準毛肋,這既限制了運輸工具的運載量怨咪,又增加了貨物在從陸路運輸?shù)胶B愤\輸?shù)托У氖止ぐ徇\過程。集裝箱這個標準化的運輸單元润匙,就為在整個運輸系統(tǒng)優(yōu)化中間流轉(zhuǎn)效率提供了一種可能诗眨。
(運輸體系中間環(huán)節(jié))
看到這里,我不由得聯(lián)想到傳統(tǒng)軟件研發(fā)測試與發(fā)布的過程孕讳。雖然每個過程內(nèi)部自動化程度很高匠楚,但是部門之間的流轉(zhuǎn)卻依靠低效的手工操作,這些過程大大降低了整體效率厂财。
系統(tǒng)性創(chuàng)新的窘境
但是非常意外的是芋簿,麥克萊恩在接下來10多年的航運生意中不僅沒賺到錢,反而是虧損了璃饱。這就太奇怪了与斤,一個能讓效率提升20倍的技術(shù),為什么會不賺錢呢荚恶?
原因在于撩穿,在當(dāng)時的運輸行業(yè),大部分貨物并沒有使用集裝箱谒撼,大量的手工搬運使得船只裝卸貨物并沒有節(jié)省多少時間食寡,還有集裝箱運到目的地后,箱內(nèi)的貨物需要分別運到不同的地方等等廓潜。
因此集裝箱技術(shù)并不在于“箱子”本身抵皱,而在于需要整個運輸系統(tǒng)的創(chuàng)新——在道路、橋梁辩蛋、卡車呻畸、碼頭和吊裝設(shè)備等基礎(chǔ)設(shè)施沒有針對“箱子”進行優(yōu)化的情況下,集裝箱技術(shù)無法發(fā)揮出原有的效能悼院。
讓我們回到最開始的問題:“什么樣的技術(shù)會帶來生產(chǎn)力的極大提升呢?”
那些創(chuàng)新了人與事物連接方式擂错,且極大降低這種連接成本的技術(shù),才能真正促進生產(chǎn)力的提升樱蛤。
DevOps正是這樣的技術(shù)钮呀,它是針對研發(fā)系統(tǒng)的一次系統(tǒng)性創(chuàng)新剑鞍。其創(chuàng)新性在于針對整個研發(fā)系統(tǒng)中的各個子系統(tǒng)進行交付與反饋的優(yōu)化,從而有效提升整體效率爽醋。
相對于傳統(tǒng)軟件6個月發(fā)布一次蚁署,2009年John Allspaw 和Paul Hammond在Flickr可以實現(xiàn)每天發(fā)布10次,將軟件發(fā)布頻率提升了將近兩千倍蚂四,極大地降低了軟件發(fā)布的成本光戈。
但是大部分公司在實施DevOps的過程中,并沒有有效提升發(fā)布頻率遂赠,這一點與集裝箱在最開始的10年內(nèi)并不賺錢的道理是相似的久妆。
(應(yīng)用研發(fā)平臺:描述構(gòu)建軟件包,在不同的環(huán)境進行測試跷睦、最終發(fā)布生產(chǎn)環(huán)境的過程)
問題在于系統(tǒng)性創(chuàng)新初期筷弦,各個環(huán)節(jié)沒有對新技術(shù)進行優(yōu)化,部分環(huán)節(jié)甚至?xí)璧K新技術(shù)發(fā)展抑诸,導(dǎo)致新技術(shù)無法提升效能烂琴。
轉(zhuǎn)機帶來的啟示
一切直到1967年才出現(xiàn)轉(zhuǎn)機。美國發(fā)動了越南戰(zhàn)爭蜕乡,美軍需要將大量物資運輸?shù)絹喼藜楸痢T陂L期的優(yōu)化實踐中,美軍得出高效運用集裝箱的3C原則:一種貨物层玲、一個地址号醉、一個客戶。
從此辛块,集裝箱的時代到來了扣癣。只在1967年一年的時間里,麥克萊恩就從美國國防部賺了4.5億美金憨降。低廉的海運成本、大大縮短的運輸時間以及到貨時間的可預(yù)期该酗,讓全球制造業(yè)的分工協(xié)作效率得到極大的提高授药。行駛在大洋上的貨輪,就像在生產(chǎn)車間里運輸原材料的叉車一樣呜魄,使得制造業(yè)不必大量囤積原材料悔叽,后來豐田的“零庫存”計劃更是將原料的管控能力發(fā)揮到了極致。
為什么3C原則可以極大提升效率爵嗅?它正是通過解決運輸“中間環(huán)節(jié)”過程的低效問題娇澎,使得總體效率得到極大提升。下面分別加以說明:
一種貨物:在貨物“裝箱”過程睹晒,統(tǒng)一貨物的來源與種類趟庄,標準化貨物裝箱過程括细。
一個地址:在貨物“分揀”過程中,不會打開集裝箱戚啥,只做一次裝箱奋单。
一個客戶:在貨物“送貨”過程,只有一個客戶猫十,簡化送貨的過程览濒。
DevOps流程的3D原則
與如何高效利用集裝箱類似,在DevOps實施過程中拖云,通過優(yōu)化流水線中間流轉(zhuǎn)過程贷笛,提升總體效率。
下面舉出與3C原則對應(yīng)的3D原則:
一鍵式部署(Automatic Deploy):部署過程中宙项,標準化部署過程乏苦,實現(xiàn)一鍵式部署
一次構(gòu)建打包(Automatic Delivery):在測試環(huán)境、UAT環(huán)境和生產(chǎn)環(huán)境的流轉(zhuǎn)過程中杉允,只打包一次邑贴,軟件包按順序自動交付到各個環(huán)境,最終發(fā)布到生產(chǎn)環(huán)境
一次配置分發(fā)(Automatic Distribution):在生產(chǎn)環(huán)境發(fā)布過程叔磷,建立統(tǒng)一的配置分發(fā)管理拢驾,將繁瑣的分布式環(huán)境配置一次分發(fā)到各個數(shù)據(jù)中心,簡化發(fā)布過程改基。
“科技是第一生產(chǎn)力繁疤!”如果我們以技術(shù)含量來衡量一個創(chuàng)新會很容易走入誤區(qū)。集裝箱發(fā)展歷史告訴我們秕狰,從狀態(tài)的流轉(zhuǎn)環(huán)節(jié)入手稠腊,降低流轉(zhuǎn)成本是提高總體效能的另外一個途徑。
集裝箱發(fā)展歷史的前十年完成了道路鸣哀、橋梁架忌、隧道、卡車我衬、碼頭設(shè)施叹放、吊裝設(shè)備的優(yōu)化,以適應(yīng)集裝箱的發(fā)展挠羔。這個進程的難點在于井仰,以一家運輸企業(yè)推進整個運輸體系針對集裝箱的優(yōu)化。
隨著技術(shù)的發(fā)展破加,DevOps的周邊環(huán)節(jié)正在逐步完善俱恶,DevOps實施的3D原則,也讓我們走入故事的后半段,就像集裝箱的故事那樣合是。
---------------------------------------------我是說正事分割線----------------------------------------
既然您都這么用心的看完了了罪,那就送個彩蛋吧。作者翻譯的《DevOps實施手冊》已經(jīng)發(fā)行端仰。
本書從如何開發(fā)企業(yè)自己的DevOps手冊入手捶惜,開發(fā)企業(yè)DevOps變革的商業(yè)案例,最后通過相互信任的企業(yè)文化將DevOps成果不斷擴大到整個公司荔烧。
據(jù)說作者近期會對本書重點章節(jié)進行解讀吱七,并在6月29日的《DevOps國際峰會暨DevOps金融峰會2018·北京》上簽名售書
DevOps國際峰會連接:https://www.huodongjia.com/event-1047513737.html
主要章節(jié)介紹: