企業(yè)應用架構(gòu)的“絲滑”升級之旅
你企業(yè)的應用架構(gòu)是什么樣的?
單體應用架構(gòu)?垂直應用架構(gòu)?分布式服務架構(gòu)?還是微服務架構(gòu)?
單體應用架構(gòu):企業(yè)初期或項目初期,應用業(yè)務量很小的時候,所有的代碼都放在一個“框”中就好了,然后這個應用部署在一臺服務器上就夠了。整個應用項目所有的服務都由這臺服務器提供。這就是單體應用結(jié)構(gòu)。單體應用的優(yōu)點在于,開發(fā)方便、測試方便、部署方便、運行良好、運維方便……總之,就是“小巧方便”,干活輕松!
垂直應用架構(gòu):隨著應用業(yè)務量增大,單體應用只能依靠增加節(jié)點來應對,但是這時候會發(fā)現(xiàn)并不是所有的應用模塊都會有比較大的訪問量。此時單體應用就做不到了, 垂直應用就應運而生。所謂的垂直應用架構(gòu),就是將原來的一個應用拆成互不相干的幾個應用,從而提升效率。
分布式應用系統(tǒng):隨著企業(yè)業(yè)務的增加,應用的復雜度也逐漸增加,數(shù)據(jù)庫、Tomcat等“摻和”了進來,單獨的一臺云主機或服務器已經(jīng)無法運載應用程序,所以這時候應用就需要進行分布式的部署。例如,我們進行一個請求,這個請求是需要依賴分布在兩臺不同的服務器的組件[Tomat和MySQL],才能完成,所以叫做分布式的系統(tǒng)。分布式架構(gòu)和單體架構(gòu)的最大區(qū)別在于分布式的項目是分開部署的,比如說把數(shù)據(jù)庫、MQ、ES單獨放在一臺或者多臺服務器上。
微服務架構(gòu):面向服務而生的架構(gòu),它更加強調(diào)服務的"徹底拆分"。微服務在技術們的朋友圈都流傳一句話:微服務就像臭豆腐,聞著臭,吃著香。沒用上微服務就被其復雜度擋在門外,真用上了就覺得“真香”。
無論你企業(yè)的應用架構(gòu)是哪一款?作為CIO、CTO或架構(gòu)師你,是否總有一個“架構(gòu)改造升級的想法”揮之不去?
企業(yè)在什么契機下萌生架構(gòu)改造升級的想法?
數(shù)字化浪潮下,企業(yè)面臨著新舊商業(yè)形態(tài)的劇變,顛覆和重構(gòu)時刻都在發(fā)生。更加快速的感知用戶側(cè)的需求變化并做出調(diào)整,才能在競爭中持續(xù)積累優(yōu)勢,業(yè)務的個性化、敏捷化、智能化需求日益凸顯,數(shù)字化應用的快速高效創(chuàng)新成為企業(yè)數(shù)字化轉(zhuǎn)型面臨的一個關鍵課題。
企業(yè)IT數(shù)字化轉(zhuǎn)型也正在由“以資源為中心”轉(zhuǎn)變?yōu)椤耙詰脼橹行摹?。服務器時代和以虛擬化技術為代表的云計算時代,企業(yè)IT建設聚焦于IT資源,更多的關注IT資源利用率的提升和IT資源管理的方便性。雖然屏蔽了一部分基礎設施的差異性,但并未從根本上解決基礎設施與軟件割裂、運維復雜的難題,應用還是無法以完全標準化的模式構(gòu)建,應用部署還是以資源為中心。進入數(shù)字化時代,IT資源建設已經(jīng)基本完善,企業(yè)的關注點從以資源為中心轉(zhuǎn)移到以應用為中心,聚焦于如何更高效進行數(shù)字化創(chuàng)新以應對日益多變的市場環(huán)境和用戶需求,包括數(shù)字化應用的敏捷交付、快速彈性、平滑遷移、主動運維等。
IT資源標準化、現(xiàn)代化之后,自然而然,行業(yè)的關注點轉(zhuǎn)移到應用的現(xiàn)代化、數(shù)字化轉(zhuǎn)型,IT架構(gòu)如何支撐、實現(xiàn)應用的現(xiàn)代化、數(shù)字化轉(zhuǎn)型成為當前行業(yè)的一個共同課題。
企業(yè)在什么契機下會萌生架構(gòu)改造升級的想法?行云創(chuàng)新服務了多家大型企業(yè)進行架構(gòu)改造,我們總結(jié)了幾點契機:
1. 原架構(gòu)不能支撐業(yè)務發(fā)展
·?新業(yè)務在拓展的過程中,除業(yè)務功能的開發(fā),需要大量的與業(yè)務功能無關的通用技術能力的開發(fā)。
·?需求越來越多,軟件架構(gòu)和規(guī)模復雜度越來越高,開發(fā)周期越來越長。
·?項目開發(fā)過程中反復工作多,導致項目開發(fā)周期長。
2. 追求技術領域先進性
·?企業(yè)應用平臺云化、容器化;
·?微服務改造;
·?DevOps開發(fā)運維一體化;
·?數(shù)據(jù)中臺、業(yè)務中臺、能力中臺;
·?實現(xiàn)數(shù)字資產(chǎn)積累并向外輸出。
應用架構(gòu)的改造之路總是充滿挑戰(zhàn)
行云創(chuàng)新曾對一些企業(yè)進行了詳細調(diào)研,通過調(diào)研數(shù)據(jù)分析企業(yè)現(xiàn)有應用系統(tǒng)情況,主要從系統(tǒng)模式、開發(fā)語言、開發(fā)框架、中間件和部署架構(gòu)等方面反映系統(tǒng)技術架構(gòu)現(xiàn)狀。企業(yè)應用架構(gòu)改造主要有以下方面的挑戰(zhàn):
·?系統(tǒng)模式:大部分系統(tǒng)是B/S模式,部分早起建設系統(tǒng)是C/S模式;
·?開發(fā)語言:開發(fā)語言多種,不同時期建設的系統(tǒng)存在 .net 語言編寫、Java語言編寫、PHP語言等;
·?開發(fā)框架:部分系統(tǒng)是MVC框架,其它大部分是SSH和SSM框架;
·?中間件:以.net語言開發(fā)的系統(tǒng)中間件是IIS,以Java語言開發(fā)的系統(tǒng)中間件以Tomcat為主,其它大部分使用Weblogic 和JBoss 中間件;
·?部署架構(gòu):大部分服務器是以虛擬機獨立部署,少部分在現(xiàn)場部署物理機。
除此之外,企業(yè)在對應用架構(gòu)進行改造的同時,毫無疑問,企業(yè)的整體IT規(guī)劃同樣受影響頗深。
應用現(xiàn)代化目標對IT規(guī)劃提出新的需求
1. 業(yè)務能力組件化
業(yè)務能力組件化即軟件由傳統(tǒng)架構(gòu)向微服務架構(gòu)轉(zhuǎn)型,微服務實現(xiàn)了軟件的模塊化、組件化、共享化,實現(xiàn)了開發(fā)團隊的獨立化、小型化和協(xié)同化,為數(shù)字化應用研發(fā)創(chuàng)新更敏捷、更高效打下了堅實的基礎。
業(yè)務能力組件化是應用現(xiàn)代化的基礎,組件化/微服務化后,業(yè)務開發(fā)更敏捷、業(yè)務更新更高效、業(yè)務擴縮容更靈活、業(yè)務運行更可靠。
IT支撐平臺需要能夠支撐業(yè)務的微服務架構(gòu)設計,展現(xiàn)各微服務組件的調(diào)用關系,并圍繞應用架構(gòu)進行微服務組件的開發(fā)、測試、部署、運維、治理等操作。應用的架構(gòu)資產(chǎn)將不再是只停留在白板或文檔里,而會成為應用平臺中的關鍵資產(chǎn)。
2. IT能力標準化
IT能力標準化包括業(yè)務能力標準化、開發(fā)框架模板標準化、流程標準化、支撐平臺能力標準化。
提供服務商店能力,支撐標準化業(yè)務能力的沉淀、分享、復用,避免各業(yè)務團隊開發(fā)中的重復“造輪子”。
為開發(fā)團隊提供標準的開發(fā)框架模板,開箱即用,降低開發(fā)環(huán)境準備的難度、節(jié)約時間,同時避免五花八門的中間件的使用,保障業(yè)務的安全性、運維的簡便性。
為各業(yè)務團隊提供標準的應用支撐平臺和適配各業(yè)務團隊的標準化研發(fā)流程,讓業(yè)務研發(fā)人員聚焦業(yè)務研發(fā),提高工作效率。
3. 服務能力SaaS化
實現(xiàn)業(yè)務能力組件化和標準化后,需要考慮將標準的業(yè)務能力以API的形式或服務組件的形式開放給業(yè)務研發(fā)團隊使用,形成業(yè)務能力的復用化,降低業(yè)務研發(fā)的工作量,簡化業(yè)務開發(fā)復雜度。
例如把標準業(yè)務能力部署到平臺上,以API的形式對外提供SaaS服務,業(yè)務研發(fā)團隊基于API編排平臺將開放的API進行快速編排,形成新的業(yè)務流程,可以大大簡化業(yè)務開發(fā)創(chuàng)新的難度。
4. 流程自動化
DevOps實現(xiàn)了軟件研運過程標準統(tǒng)一,強化應用研發(fā)運營全周期的管理、打破部門壁壘,從應用需求到生產(chǎn)運維的全流程改進和優(yōu)化,結(jié)合統(tǒng)一工具鏈,實現(xiàn)文化、流程、工具的一致性,提升數(shù)字化應用創(chuàng)新整體協(xié)同效率,提升軟件交付效率。
總結(jié)完應用架構(gòu)改造將面臨的挑戰(zhàn)以及隨之而來的IT規(guī)劃需求的變化,那么,還應該制定一個標準:企業(yè)應用架構(gòu)改造升級,怎么樣才算成功呢?
應用架構(gòu)改造怎么才算“成功”?
根據(jù)應用系統(tǒng)技術架構(gòu)現(xiàn)狀,通過技術架構(gòu)先進性、可靠度、性能、維護性和擴展性進行評估系統(tǒng)技術架構(gòu)。

關于企業(yè)應用架構(gòu)改造升級,我們總結(jié)了挑戰(zhàn)和需求,制定了標準,最后,最關鍵的一點——如何讓企業(yè)應用架構(gòu)改造“如絲般順滑”?
如何讓企業(yè)應用架構(gòu)改造“如絲般順滑”?
行云創(chuàng)新CloudOS,一站式云原生開發(fā)平臺,聚焦于應用的敏捷創(chuàng)新和應用的靈活管理,幫助企業(yè)構(gòu)建自主可控、敏捷可靠的數(shù)字化創(chuàng)新平臺,實現(xiàn)數(shù)字化應用創(chuàng)新的敏捷化和能力共享化,為企業(yè)數(shù)字化應用創(chuàng)新和轉(zhuǎn)型提供一體化能力支撐,加快企業(yè)上云步伐。

CloudOS一站式云原生開發(fā)平臺主要包含以下三大模塊:
·?應用研發(fā)平臺:支撐應用的敏捷創(chuàng)新。
·?應用管理平臺:實現(xiàn)應用的高效靈活交付、穩(wěn)定可靠運行、簡便智能運維;
·?企業(yè)資產(chǎn)商店: 為企業(yè)提供開箱即用的中間件服務,并沉淀企業(yè)的公共業(yè)務組件、公共技術中間件,實現(xiàn)企業(yè)軟件資產(chǎn)的標準化、產(chǎn)品化和共享化。
基于CloudOS實現(xiàn)應用的“燦爛的一生”:
1. 服務的創(chuàng)建(Cloud OS 上新建-> 項目類型:服務)
2. 服務的定義(干啥的?有哪些API,怎么用?聯(lián)系誰?)
3. 服務的開發(fā)(Cloud OS 核心能力)
4. 服務的質(zhì)量(API測試用例)
5. 服務的上架(上線? 到 全新改版的商店)
6. 服務的使用(在商店中瀏覽服務找到服務,拖拉拽到新的項目類型:應用)
7. 服務的監(jiān)控(以服務為中心的 架構(gòu)圖,哪些應用用了我,流量情況?)
8. 服務的治理(誰可以訪問我,誰的優(yōu)先級高,誰的服務調(diào)用我們用偽造數(shù)據(jù)回應---MOck)
9. 服務的運營(一次調(diào)用多少錢?多少成本,賬單?)
10. 服務的運用( 支付接口調(diào)用次數(shù)走向?支付額走向? 業(yè)務越來越差?早發(fā)現(xiàn)、早處理)

應用CloudOS所帶來的服務能力
基于CloudOS實現(xiàn)的收益
行云創(chuàng)新CloudOS平臺,目前已經(jīng)成功在上汽、海爾、格力、中信銀行等企業(yè)落地運行,并且基于CloudOS也成功助力多家企業(yè)實現(xiàn)了應用架構(gòu)改造升級,總結(jié)一下主要收益:
1. 業(yè)務能力提升
·?提升業(yè)務的準確性、完整性和系統(tǒng)性,提高信息平臺的共享性、互聯(lián)性和統(tǒng)一性。
·?通過統(tǒng)一業(yè)務服務實現(xiàn)信息資源共享,減少業(yè)務人員的信息搜集和編排工作量。
·?逐步實現(xiàn)生產(chǎn)管理業(yè)務大集中。
·?逐步形成信息化能力中心,更好地支撐數(shù)字化轉(zhuǎn)型。
2. 經(jīng)濟效益提升
·?預計每年的運維費用降低50%。
·?減少新信息系統(tǒng)建設及老舊系統(tǒng)維護的投資成本。
·?減少管理類平臺的開發(fā)時間。
3. 管理效率提升
·?建立統(tǒng)一的運維管理團隊進行集中管控,有利于提升管理效率。
·?數(shù)字化資產(chǎn)被作為重要資產(chǎn)進行規(guī)范化管理。
·?通過建設一體化信息化平臺,無須切換多個系統(tǒng)即可實現(xiàn)數(shù)據(jù)集成、信息管理、作業(yè)調(diào)度和服務支持等操作,大幅提高了管理人員的工作效率。
·?集中信息管理模式,提高信息安全管控效率,減少信息安全風險。
-------------------------
https://www.cloudtogo.cn/whitepaper/452.html?B=qiyejiagoushengji
本文內(nèi)容出自《CloudOS解決方案白皮書》,點擊上方鏈接立即免費獲取白皮書>
