傳統企業IT爲何對微服務葉公好龍的心態?(轉)

這兩年來,「微服務」、「雲計算」、「大數據」、「人工智能」的概念在IT界成了新的寵兒:珠聯壁合、聲名遠播、勢如破竹、如日中天!從實踐落地的狀況來看:微服務誕生於互聯網,固然是首先在互聯網界遍地開花,高奏凱歌,所向披靡,處處佈道。當傳統企業剛遇到「微服務」,哇!這玩意真好啊,真是葵花寶典啊!業務隔離、獨立部署、獨立上線,高性能、高可用、彈性伸縮!咱們公司要是也能實現這個該有多好啊!持續集成、持續部署,這不是咱們成天喊成天吹的業務敏捷正須要的東東嗎?然而在研究一翻以後,「洗洗睡吧!「 抱着質疑的態度試試看的心態有之,唱反調嗤之以鼻的也有之,總之,進展不如人意!數據庫

去年有幸參與了一家國際巨頭級大企業的微服務架構治理項目,在平衡了研發部門的一些阻力以後,經過堅持」適度自包含「的原則,還算成功!但「微服務」這個詞,在火過一在段時間後,從這家公司的PPT中、公開演進中,基本再也不提了,「微服務」這個詞成了這個企業忌悔的東西。服務器

下圖的企業級IT採納週期圖,也說明了這個現實:網絡

這裏咱們可能應該思考一下,爲何是這麼個順序?首先看互聯網公司特別是巨頭級電商,如阿里巴巴,從它的架構演進經歷就能夠看出,它是被業務複雜度、高併發、大數據逼出來的,從淘寶,到天貓,再到各種第三方渠道互聯網產品,業務愈來愈複雜,周圍聚攏的合做夥伴、合做夥伴的用戶,企業用戶、我的用戶。不搞商品中心、店鋪中心,不搞垂直切分,不搞微服務,不搞大中臺,它就玩不下去了,因此是很是天然的。AWS也同樣,原本是開電商賣書的,後來啥都賣,新的創意每天有,老闆也OPEN ,雲平臺徹底是一個意外的產物,因此它成了第一。亞馬遜與阿里有一個共同的特徵就是:老闆不是IT人。而ORACLE,IBM,微軟這些巨頭就不一樣了,沒有云計算、微服務以前,思考一下之前它們是靠什麼賺取高額利潤?商業套件+硬件服務器,這種組合方式,已經保證了ORACLE,IBM,微軟近15年的高利潤,它們固然不肯也不會輕易接受新事件的衝擊了,它們屬於不見棺材不落淚的類型,若是一直裝鴕鳥,就會象諾基亞同樣隨風而去,中國聯想也是同樣,頹勢愈發明顯。而這些巨頭的偉大之處就在於,雖然有質疑,但會敏感地關注,不斷評判,每每在緊要關頭,迎接挑戰,最後扭轉困局。好比微軟是三巨頭中最先一個看到危機的,因此Asure雲平臺如今市場佔有率第二。架構

而對於企業來講,IT屬於支持部門這個理念基本就沒變過,三個月一上線週期是正常的,六個月也是有的,兩個月一個大版本就是比較優秀了,兩週一個小升級那就就是先進了。業務部門、銷售部門對於企業來講永遠是王者,其它部門都是支持部門,由於人家是直接看獲得錢的。人慫志固然短了。對於IT研發、運維部門來講,少出事、別出大事、出了事與本身無關,那是絕對是自保基本三原則,那麼對於IT新技術、新趨勢的接受程度、落地速度,天然就是最慢了,若是沒有頂層部門壓下去,那是不可能跟上時代的。併發

大勢所趨,趨之若鶩,再葉公好龍,再接受的慢,仍是得擁抱"微服務"啊擁抱雲!那麼我該如何擁抱你呢?個人」微服務「。沒別的辦法,咱們還要得思考,咱們要用「微服務」改變什麼?實現什麼目標?運維

對於巨頭級跨國公司,基本大併發高性能、大數據的需求都不迫切,大部分業務系統均爲企業用戶或內部員工,量級最多幾十萬,QPS1000基本就均可以打發了,數據量也不大,大量系統幾年十幾年了,數據庫規模也是G級,一個ORACLE就裝下了,它最大的訴求是什麼,是直面激烈的市場競爭,和高壓的銷售任務,那麼關鍵就找到了:如何在持複雜、持續變化的業務背景下,實現持續集成、持續部署、持續上線,實現真正的業務敏捷、隨需而變。分佈式

在微服務化沒出來的時候,這些企業的CIO也沒少努力,可就是效果不大,或者壓根不見效,SOA、敏捷、自動化測試,各類神器大展身手,那麼敗在了哪裏呢?通過深度思考、分析,下面是它們的敗點:微服務

一、項目組織由不一樣部門組成,「部門牆」遺害無窮高併發

二、項目組內是按技術架構分,而不是按業務,團隊依賴嚴重、溝通成本高性能

三、SOA以最大複用爲目標,層間依賴嚴重,未能隔離業務依賴,陷入依賴地獄

四、自動化程度差,開發、測試、試運行、生產環境的不一樣使QA質量不高

五、敏捷流於形式,未能有效隔離業務,工做量風險估計不足,敏捷不起來

各種神器既然都不見效,或者效果不明顯,企業IT部門對新生事物固然會愈來愈抱着質疑的眼光,這玩意真的行嗎?真能解決問題嗎?還有,在大型企業特別是巨頭級央企、私企, 不管IBM、ORACLE、微軟、諾基亞、聯想,都存在一個「尾大不掉」的問題,就是接受新事物慢、掉頭慢、動做慢,對潛在挑戰者的出現,每每在較長時間持鄙視的態度。如諾基亞對智能手機的三年鄙視,錯失了追趕的時間,一敗塗地,落個被收購的命運;IBM、ORACLE、微軟之於雲計算、AI,趕了個大早,起了個晚集,這裏面微軟省悟得還算快了一點,就這麼一點也從AWS的雲計算地位差了一大截。沒法像阿里那樣不斷螞蟻金服、菜鳥網絡的涌現。因此領導人的思惟很重要,領導人的換維眼光很重要,領導人的膽魄很重要,但若是象樂視賈躍亭那樣只顧飛,不見陸地,有一天終會「啪」摔在地上。

那麼咱們回過頭來繼續思考,爲何傳統企業IT負責人爲何對微服務有着葉公好龍通常的心態?,最根本的緣由,還是「尾大不掉:現有系統業務流程、應用架構、技術架構、產品UI通過多年打拼、打磨,付出大量加班和心血,已經穩定運行多年,可用性、穩定性已經到達必定高度,固然不忍打破了。由於打破以後的工做量風險、成本風險、質量風險、穩定性風險、週期風險,對部門業績是一個挑戰,所以在無上級部門強制要求,或者將架構重整當成考覈指標的狀況下,天然是穩定壓倒一切,穩定壓倒一切,穩定壓倒一切.

沒辦法,你們首先要生存嘛,要生活嘛,不要風險!微服務的粒度細到必定程度,自包含很容易被打破,原有的強一致場景、一個SQL就解決的問題天然也被打破,UI交互甚至要從新調整、從新設計,服務層、數據層均要垂直切分,那麼憑空會出來大量分佈式事務,還要保持原來的強一致性(思惟轉變不過來),原來大量關聯SQL很容易解決問題的,須要在數據庫切分改後進行改造,數據模型不支持細粒度切分啊怎麼辦,加一個字段就可能影響許多點代碼進行修改,從新測試,重構工做量不但大增,對系統原有穩定性也是一個打破和重建的過程,現有系統還要疲於奔命應付業務變化的狀況下,「重構」成功了額外的工做,所以其重構的複雜性、工做量、風險都成了重大的阻力。

因此,以上纔是傳統企業IT負責人爲何對微服務有着葉公好龍通常的心態的核心因素。

因此不管是微服務,仍是雲計算,大型企業的接受確定是排在最後,那麼,如何轉變呢?不是那麼容易的,由於這是一個系統問題,微服務、DevOps、雲計算,對大型企業的組織方式、管理方式、運營模式的衝擊,是顛覆性的,咱們看看有哪些顛覆性的元素:

一、微服務是對業務的垂直切分,那麼對業務部門,也得垂直切分,方能實現業務隔離、業務敏捷,這是對業務部門動手術。

二、微服務是從需求-產品-開發-測試-運維的一體化,以細粒度的業務爲單位,在大企業,這些環節每每由一個獨立部門負責的,是對部門牆的打破。

三、項目團隊按微服務團隊,每一個微服務要有業務持續性,有價值,這樣這個團隊纔是活的,有價值的。

能夠看到,這些顛覆性的元素,具備變革的性質,凡是變革,若是沒有一把手的領導,沒有頂層設計、監督、推動、執行,是不可能成功的。

相關文章
相關標籤/搜索