《謝立拓:大型企業基于互聯網架構的業務敏捷實踐(21頁).pdf》由會員分享,可在線閱讀,更多相關《謝立拓:大型企業基于互聯網架構的業務敏捷實踐(21頁).pdf(21頁珍藏版)》請在三個皮匠報告上搜索。
1、大型企業基于互聯網架構的業務敏捷實踐北京天源迪科信息技術有限公司謝立拓(副總經理)通信行業政府與公共事業金融行業互聯網行業其他行業深圳天源迪科信息技術股份有限公司From 1993Stock Code:300047阿里云Aliware金牌合作伙伴合作案例深圳、北京、上海、合肥、武漢、南京、南寧、重慶深圳、北京、上海、合肥、武漢、南京、南寧、重慶員工5000+創新沒有捷徑,都是在各個領域不斷試錯,業務敏捷幫助企業進行低成本、快速迭代的試錯,賦能創新大部分大型企業,傳統架構下創新落地周期一般為3-6個月創新成為大型企業的新驅動力,業務敏捷實現快速試錯、賦能創新跨界合作,異業聯盟傳統主營,模式升級大
2、型企業在IOE傳統架構支撐下,遇到的問題包括:快速迭代快速上線快速迭代快速上線靈活擴展從容應對互聯網式訪問靈活擴展從容應對互聯網式訪問跨界靈活合作快速接入跨界靈活合作快速接入輕量化創新快速試錯輕量化創新快速試錯大型企業對業務敏捷的訴求為:業務響應慢業務響應慢垂直擴展方式有天花板垂直擴展方式有天花板硬件和第三方軟件成本高硬件和第三方軟件成本高業務封閉,開放性差業務封閉,開放性差ITIT資產無法沉淀資產無法沉淀互聯網共享中臺架構是實現業務敏捷的基礎架構互聯網共享中臺架構是實現業務敏捷的基礎架構前端前端應用應用基礎基礎資源層資源層 基于業務中心能力,構建輕量、靈活、百花齊放的應用 業務中心,對外提供
3、標準化服務,簡化應用研發復雜度 技術組件,通過豐富的分布式技術組件,為業務能力中心構建提供技術基礎分布式服務框架訂單中心商品中心營銷中心客戶中心前端應用前端應用前端應用前端應用前端應用前端應用中臺中臺業務業務中臺中臺技術技術中臺中臺分布式數據庫分布式消息分布式緩存分布式存儲.敏捷研發敏捷研發開發測試部署集成治理數字化數字化運維運維安全服務數據監控告警計算池計算池網絡池網絡池存儲池存儲池 構建資源調度管理框架,按需提供,管控計算資源、存儲資源和網絡資源等 通過一套集成工具、一套標準化流程與方法,構建敏捷高效研發體系 通過自動化運維手段,實現各層運行情況的可視、可管、可控.業務敏捷實踐經驗分享 能
4、力中心服務化按照敏態與穩態分離的策略對業務進行解耦符合高內聚低耦合、核心數據完整性、業務可運營三原則能力中心服務化過程中,要結合業務考慮跨中心異步事務的處理及異常機制能力中心服務化后,向上層前端應用開放,能力中心服務可供其它中心調用 中心內部服務化采用多層級服務化設計,提供更高的靈活性與穩定性中心內部服務提供本中心內部使用,不建議對外開放業務敏捷實踐1:服務化設計(縱向分中心,橫向分層)核心與非核心業務分離批量與單個業務分離以某運營商系統為例,實踐服務化中心解耦XX中心管理功能XX中心銷售接口高并發與常規業務分離敏態與穩態業務分離面向業務管理人員業務影響小,要求靈活面向前臺、電渠銷售業務影響大
5、,要求穩定XX批量業務功能XX業務功能處理能力要求高主機資源占用大,共享資源影響其他服務響應速度要求快主機資源占用少,交易頻次要求高XX選號中心XX中心銷售接口高頻交易TPS要求高,分離易擴展交易頻率較低TPS低,基本無需擴展XX中心管理功能XX中心銷售接口新業務變化快分離減少系統升級交叉影響對外銷售管理接口穩定,變化頻率低,應用穩定業務敏捷實踐1:服務化設計(解耦實踐)說明:基于Aliware的分布式服務框架業務邏輯服務核心業務服務業務服務原子服務組合服務資源中心訂單中心客戶中心業務服務原子服務組合服務業務服務原子服務組合服務業務服務原子服務組合服務注冊中心注冊訂閱調用中心A中心B組合服務單
6、元服務原子服務組合服務單元服務原子服務分布式服務框架能力開放平臺調用調用組合服務:組合本中心業務服務或跨中心的服務,形成組合服務,實現跨事務業務業務服務:中心內部承載的服務,提供事務完整性原子服務:可復用的最小公共服務,提供事務完整性前端應用-能力中心能力:通過能力開放平臺調用中心A-中心B能力:通過分布式服務框架調用中心內服務調用:通過分布式服務框架調用服務化設計建議服務化設計建議能力調用建議能力調用建議業務敏捷實踐1:服務化設計(分層設計建議&能力調用建議)數據庫盡量做數據存儲而不是業務邏輯摒棄原有復雜的SQL邏輯,使用簡單SQL+程序邏輯建議1:回歸數據庫本質邏輯數據庫屏蔽數據的物理存儲
7、位置與路由信息等,實現數據的透明訪問、數據存儲橫向擴展、計算能力橫向擴展參考單表不超過千萬的設計原則,將億級別的數據量進行分庫分表建議2:分庫分表解決大數據量問題離線數據(DRDS 歷史數據/中間數據)、統計報表(HBASE 分布式計算/報表)、多維查詢(ES 實時查詢)、數據拆分只讀(RDS 個性化業務)、緩存數據(Redis 高頻訪問/會話)使用數據同步/訂閱工具實現實時數據同步建議3:數據分類存儲(基于Aliware)新的分布式技術需要我們突破傳統思維高頻訪問以前只能選擇內存數據庫,新技術帶來新選擇,取代傳統內存數據庫的可能是分布式數據庫建議4:突破傳統技術思維業務敏捷實踐2:數據層云化
8、是難點,需要全面解決方案(數據設計建議)分庫分表目的:分散數據庫壓力,達到橫向擴展,需考慮訪問均衡、事物邊界容量和訪問均衡事務邊界分多少庫分多少表分庫分表原則分庫分表分多少表由業務量決定分多少主機由業務壓力決定實踐以某運營商號卡系統為例設計時需要考慮方面:拆分鍵、數據存儲特性、讀寫分離、聚合查詢、SQL支持、事務支持、業務解耦等;以號碼分庫為例:如按照省份分庫,會出現大小省的問題,綜合可慮后選擇號段分庫配置類數據,通過廣播表的方式,解決數據關聯的問題;單表不超過1000W條數據,保障數據庫的穩定;業務敏捷實踐2:數據層云化是難點,需要全面解決方案(分庫分表實踐)0104選擇存儲維度訪問特征數據
9、量實時性使用場景數據來源使用范圍分析六個維度,選擇合適的數據存儲策略接入層EDASECSECSECSECSECSECSRedisSLBSLBOSSDRDSElasticSearchDTSDTS-WriterHBASEDRDSRDS服務層實時數據層數據傳輸層離線數據層實時交易多維數據查詢大批量文件高并發緩存數據訂閱數據實時同步數據挖掘/報表離線/冷數據個性化業務業務敏捷實踐2:數據層云化是難點,需要全面解決方案(數據存儲實踐)某項目數據存儲實踐(基于Aliware的多個產品)低成本試錯無問題上線根據不同的業務需求配置不同引流策略,可按區域、用戶等多個維度提前上線驗證業務的推廣效果,降低業務風險灰
10、度環境可進行詳細的驗證測試、觀察,將可能的問題和風險控制在較小的范圍灰度驗證通過后全面放開,用戶感知有保障 灰度發布:在新業務正式發布之前,通過流量導入手段,將部分用戶請求引導到灰度環境,進行在線試用,通過收集用戶反饋、系統數據進行快速迭代,以達到較好的用戶感知和應用穩定業務敏捷實踐3:引入灰度機制,低成本試錯(1/2)WEB服務器應用服務器數據庫能力平臺/統一門戶WEB服務器應用服務器當前版本歷史版本WEB服務器應用服務器灰度版本當前版本:當前系統的穩定版本;歷史版本:已經上線運行且仍有系統調用的服務版本,證服務支撐的連續性和穩定性;灰度版本:少量用戶試用的灰度版本,以控制發版對生產的影響;
11、實踐:以某運營商號卡中心為例 API服務,通過統一接入的能力平臺的灰度引流功能,根據省份、工號等信息完成不同版本的引流;WEB頁面功能,通過統一門戶的灰度引流功能,根據省份、工號等信息完成不同版本的引流;目前生產環境與灰度環境的機器比例為5:1;業務敏捷實踐3:引入灰度機制,低成本試錯(2/2)需求管理需求管理敏捷研發體系敏捷研發體系部署管理部署管理研發管理研發管理測試管理測試管理運維管理運維管理解決需求拆解問題解決任務跟蹤問題解決代碼倉庫管理解決多工程主干分支管理解決開發人員內測問題解決多工程依賴打包問題解決多環境集中發版問題解決敏捷體系下持續集成問題解決分布式環境下自動化測試問題解決多迭代
12、小組并行干擾的問題解決微服務架構下業務全鏈路跟蹤、監控與問題排查難的問題解決各環節問題的同時,實現環節協同、處理跟蹤、整體研發風險控制管理敏捷研發體系是互聯網云化架構下,實現業務敏捷的必要條件,是實現從需求到運維的系統支撐全鏈條的敏捷研發體系是互聯網云化架構下,實現業務敏捷的必要條件,是實現從需求到運維的系統支撐全鏈條的跟蹤、協同與管理跟蹤、協同與管理業務敏捷實踐4:研發體系是敏捷之本(敏捷研發體系思路)通過敏捷研發體系,提升交付效率,實現自動化、流程可管可控,環環相扣互為賦能的目標通過敏捷研發體系,提升交付效率,實現自動化、流程可管可控,環環相扣互為賦能的目標服務治理工具開發平臺服務編排資源
13、管控平臺數據治理工具監控平臺告警收發平臺禪道GITJenkinsRobot項目信息同步產品、項目、迭代需求、任務、缺陷服務設計、服務依賴管理、服務版本管理、任務發布開發任務自動發布靜態頁面發布自動創建分支自動生成服務代碼打包發布服務編排元數據定義能力共享平臺服務編排運行引擎4測試集成界面開發工具,組件標準化,前后分離設計數據庫DDL腳本審核執行MQ消息變更ES結構變更應用批量數據修復日志審計裝機模板管理系統自動集成部署方案CMDB應用管理、啟停部署策略制定、執行1先腳本2后應用3獲取發布策略,進行開發、測試、聯調環境發布應用包上傳到OSS/SFTP,包含war、jar、配置文件業務中心集群獲取
14、配置數據獲取部署方案應用生產環境發布5回歸測試基礎資源監控平臺組件監控應用服務監控專項監控大盤監控告警信息實時推送多點接入,一點匯聚免打擾設置告警剔重多種途徑SMSWEIXINEMAILDINGDING業務敏捷實踐4:研發體系是敏捷之本(敏捷研發體系具體內容與流程)建設運營割裂的模式建設運營割裂的模式建設運營一體化模式建設運營一體化模式數據數據分析分析業務業務規劃規劃技術技術實現實現產品產品設計設計業務運行業務運行提出業務提出業務方案方案制定業務制定業務需求需求系統實現系統實現設計設計應用開發應用開發支撐支撐聯調測試聯調測試上線上線系統運行系統運行維護維護通過建營一體化的支撐模式,提高溝通效率
15、,實時反饋,實現通過建營一體化的支撐模式,提高溝通效率,實時反饋,實現ITIT與業務的融合與業務的融合業務部門建設部門維護部門業務敏捷實踐5:建營一體化支撐模式(1/2)一體化建設運營敏捷團隊專業化、小團隊組織架構覆蓋運營支撐工作范圍由業務人員+系統支撐人員,兩類人員組合而成業務人員主責業務需求,參與系統概要設計、計劃的評審及支撐效果驗收系統支撐人員主責功能實現,參與業務需求梳理及運營工作圍繞業務運營的各主題,形成專業化的一體化團隊,負責本主題的業務運營及支撐制定業務需求系統業務支撐業務效果分析業務迭代優化 進行業務改良 不斷迭代演進 業務運營數據采集 業務運營數據分析 滿足需要要求 系統設計
16、與研發 業務需求 提出時間要求業務敏捷實踐5:建營一體化支撐模式(2/2)一次性遷移一次性遷移分業務解耦分業務解耦分功能解耦分功能解耦互聯網引入策略上,我們建議以業務驅互聯網引入策略上,我們建議以業務驅動、痛點驅動和創新業務優先的思路動、痛點驅動和創新業務優先的思路 結合企業自身業務及結合企業自身業務及ITIT整體環境等多種因整體環境等多種因素,綜合考慮選擇適合的云化實施策略素,綜合考慮選擇適合的云化實施策略適合于復雜度低、業務規模較小的情況或系統很難解耦適合于業務相對獨立,與其它業務耦合度不高的情況適合于功能相對獨立,與其它模塊耦合度不高的情況業務敏捷實踐6:實施上小步快跑、業務驅動、創新業務優先故障排查監控分析批量管理界面化的批量管理數據源統一管理Ansible/Saltstack全自動化、自動發現全局監控、一點監控智能趨勢分析告警管理調用鏈路診斷日志收集、統一管理自動故障分析業務敏捷實踐7:重視新架構對運維的新挑戰