網易云詳解:微服務架構如何促進企業(yè)數字化轉型?

近日,2018第二屆云原生技術大會(CNTC)在杭州召開,網易云副總經理陳諤在會上介紹了微服務架構在企業(yè)數字化轉型中發(fā)揮的作用,并基于網易微服務實踐經驗分享了實施微服務的挑戰(zhàn)與對策。

陳諤表示,業(yè)務架構服務化是企業(yè)擁抱變化、實現數據資產化的必由之路,而實現業(yè)務架構服務化的技術基礎是微服務架構,需要解決服務拆分、資源調度、工程化、系統(tǒng)魯棒性、故障診斷、運維復雜性等挑戰(zhàn)。目前,網易云已經基于開源技術棧很好地解決了這些問題。

網易云詳解:微服務架構如何促進企業(yè)數字化轉型?

業(yè)務架構服務化是數字化創(chuàng)新的必由之路

盡管互聯網+、數字化轉型已經上升為我國的國家戰(zhàn)略,傳統(tǒng)行業(yè)的企業(yè)紛紛嘗試以數字化技術驅動企業(yè)數字化創(chuàng)新,實現數字化轉型,然而我國的企業(yè)數字化轉型升級還處在較為初級的階段。根據權威市場研究報告顯示,數字經濟是世界經濟創(chuàng)新發(fā)展的主流模式,發(fā)達國家數字經濟占GDP比重已超過50%,我國數字經濟目前占GDP比重為30%,還有巨大的發(fā)展空間,這也是企業(yè)進行數字化轉型的動力之一。

IDC認為,數字經濟的發(fā)展需要通過數字化知識和技術進行社會生產力的重塑。陳諤表示,IT架構云化是基礎,數據也要資產化,成為關鍵生產要素,成為決策的依據。他分析了國內企業(yè)的數字化技術應用狀況:IT架構云化和數字資產化近年來已經得到國內企業(yè)的重視,但業(yè)務架構的革新則往往被企業(yè)忽視。

然而陳舊業(yè)務架構對數字化創(chuàng)新具有危害性,既不利于響應業(yè)務變化,也不利于數據資產化。“煙囪式的業(yè)務數字化建設造成了大量的損耗,獨立建設的系統(tǒng)成為信息的孤島,阻礙了數據資產化的實現,進而影響到前瞻性或擁抱變化的決策,”陳諤說。

以網易的探索經驗看來,擁抱變化是實現數字化創(chuàng)新的核心,服務化具有可迭代適應需求的變化、可重用、可組合等特征,業(yè)務架構服務化讓企業(yè)能夠更好地擁抱變化,因而是數字化創(chuàng)新的必由之路。

實施微服務的挑戰(zhàn)與對策

實現業(yè)務架構服務化的技術基礎是微服務架構,微服務架構具有細粒度、去中心化的特點,因而可以解決更新迭代的影響范圍、代碼腐化、服務局部彈性、溝通協(xié)作瓶頸等問題。這也是互聯網企業(yè)普遍選擇微服務架構的重要原因。

然而,要獲得微服務的好處并不是一件輕松的事情。陳諤介紹,網易在實施微服務過程中遇到的主要挑戰(zhàn),包括服務拆分、資源調度、工程化、系統(tǒng)魯棒性、故障診斷、運維復雜性等六個方面。

網易云詳解:微服務架構如何促進企業(yè)數字化轉型?

服務拆分。網易在2010年開始有微服務架構的探索,在服務拆分時遇到了各種問題,如服務間的高頻依賴、數據訪問模型的匹配、是否會引入大量分布式事務,這些都需要考慮,一次性的統(tǒng)一規(guī)劃很可能留下隱患。對此,陳諤表示,一次性的拆分不如逐步拆分迭代,可從工程級別的拆分逐步過渡到服務拆分。

資源調度。由于網易業(yè)務類型眾多,用戶數量龐大,團隊在實施微服務架構過程中遇到了QoS難以保障、服務器機型碎片化、資源需求無法及時得到響應等諸多難題,這些問題直到2012年網易云團隊研發(fā)的私有云上線之后才徹底解決。因此,陳諤認為,實施微服務必須以IT資源的云化為基礎。

工程化。實施微服務架構必然導致研發(fā)、測試環(huán)境的激增,從代碼的版本控制到打包部署必須有完善的工程化支持。而IT資源的云化之后,服務粒度更細、規(guī)模更大成為了現實,此時甚至還需要做測試環(huán)境的重用。所以,陳諤認為,必須建立完善的CI/CD(持續(xù)集成/持續(xù)交付)支持,對應不同環(huán)境實現統(tǒng)一的配置中心。

系統(tǒng)魯棒性。細粒度的服務難以進行靜態(tài)的容量規(guī)劃,復雜的依賴和較長的調用路徑造成局部服務的故障或性能瓶頸可能引起系統(tǒng)雪崩。陳諤給出了對策:引入服務治理平臺,解決服務的發(fā)現、熔斷、降級等問題;引入彈性伸縮能力,能夠按需伸縮,避免出現局部處理能力的瓶頸。

故障診斷??绶掌鲝碗s的調用鏈路,造成微服務架構的軟件系統(tǒng)難以進行問題排查。陳諤的答案,是引入全鏈路跟蹤平臺,不僅支持服務的性能分析,同時支持調用鏈路的跟蹤,結合日志服務能直接根據調用請求ID進行處理鏈路的問題排查。

運維復雜性。微服務架構的引入,不僅軟件系統(tǒng)的架構發(fā)生變化,組織架構也往往隨之變化,去中心化、小團隊、高速迭代的特征加上微服務架構的高度復雜性使得難以設置一個中心化的運維團隊負責所有運維工作。陳諤指出,要建立高度自動化的運維工具鏈,實施DevOps的工作模式,讓開發(fā)人員面向承載服務的抽象資源,而不是服務器。

開源技術棧的優(yōu)勢

以上的解決方案,都已經有成熟的開源實現。陳諤認為,采用開源方案、擁抱社區(qū)標準能夠讓技術方案更具有生命力,因為開源意味著多數人的共同選擇,開源持續(xù)演進,意味著沒有廠商鎖定,意味著良好的人才支持,也意味著更低的研發(fā)成本、更快的上線速度。

陳諤舉例說,網易曾實踐采用Agent+模版的方式初始化環(huán)境,配合CD系統(tǒng)部署軟件,但由于基準鏡像逐漸分化,產生了上千個初始化模版,大部分模版無法重用。直到Docker容器與Kubernetes編排系統(tǒng)先后出現,網易才找到了解決之道。所以,陳諤也認為,容器與編排系統(tǒng)是微服務的最佳載體。

事實上,除了開源容器技術,網易云微服務技術棧還支持Spring Cloud、Dubbo、OpenTracing、Prometheus等開源技術,并解決了微服務應用生命周期功能完整性、業(yè)務侵入性等核心問題,提供微服務框架、API網關、容器服務、DevOps、AIOps和全自動化測試等全棧能力。網易云將這套整合優(yōu)化之后的微服務技術棧稱為“輕舟微服務”,用以廣泛支撐網易內部業(yè)務,包括網易考拉、網易云音樂等熱門產品。

網易云詳解:微服務架構如何促進企業(yè)數字化轉型?

據了解,網易云輕舟微服務已經在今年7月31日正式發(fā)布,目前已經應用于德邦快遞、大華等企業(yè)的生產環(huán)境中,幫助這些企業(yè)實現數字化轉型升級。

免責聲明:本網站內容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網站出現的信息,均僅供參考。本網站將盡力確保所提供信息的準確性及可靠性,但不保證有關資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責。本網站對有關資料所引致的錯誤、不確或遺漏,概不負任何法律責任。任何單位或個人認為本網站中的網頁或鏈接內容可能涉嫌侵犯其知識產權或存在不實內容時,應及時向本網站提出書面權利通知或不實情況說明,并提供身份證明、權屬證明及詳細侵權或不實情況證明。本網站在收到上述法律文件后,將會依法盡快聯系相關文章源頭核實,溝通刪除相關內容或斷開相關鏈接。

2018-11-06
網易云詳解:微服務架構如何促進企業(yè)數字化轉型?
近日,2018第二屆云原生技術大會(CNTC)在杭州召開,網易云副總經理陳諤在會上介紹了微服務架構在企業(yè)數字化轉型中發(fā)揮的作用,并基于網易微服務實踐經驗分享了實

長按掃碼 閱讀全文