云原生集成開發環境——TitanIDE
通過網頁在任何地方更安全、更高效地編碼2022-07-07
981
當前,以微服務、DevOps、容器、多云業務管理為代表的云原生技術已經廣泛成熟應用,成為加速企業數字化業務高效創新、實現企業數字化轉型的最佳技術支撐。而信創支持、國產化支持,是中國企業數字化轉型不得不滿足的基本要求。更有專家指出,在關乎企業生存的必選項“數字化轉型”以及國家信創戰略的共同沖擊下,企業需要改變現有業務和IT的架構,更快速地應對挑戰、響應變化,增強自身的競爭力。
leyu.樂魚創新專業打造信創微服務開發支撐能力,助力中國企業打造信創微服務平臺。
一、打造業務系統向信創環境一鍵切換的能力
信創是堅定之路,需正視他帶來的若干挑戰才能走好信創之路。堅持信創會主要帶來以下挑戰:
1、時間緊迫性帶來的挑戰:信創工作時間緊、任務重,原有的業務開發計劃已經排得很滿,如何讓信創工作又好又快地開展,同時對原有業務項目建設推進影響最???
2、業務適配新技術的挑戰:信創建設必然引入新硬件、新軟件,開發測試人員也需要學習他們嗎?如何避免開發、維護信創、非信創多套代碼、多個版本?
3、保障業務穩定性的挑戰:信創建設引入的硬件、軟件需要一個過程驗證對何種業務有怎么樣的支撐力度,非信創與信創如何共存和過渡?如何按需在非信創和信創環境間靈活調度業務?
4、信創技術多變性的挑戰:大趨勢下,隨著時間推移,硬件、操作系統、數據庫、中間件等各類新的信創組件將層出不窮的出現,如何建立起一個能夠開放漸進、優勝劣汰、持續引入的能力?
其中,現有業務系統與各層次信創技術的適配性,例如在數據庫層級,信創代表技術有達夢、阿里云等,而國產數據庫一般承諾兼容ANSI SQL標準,但我們代碼中可能使用了大量的MySQL/Oracle的特性,如存儲過程等,適配國產數據庫是一個開放漸進的大工程。再比如中間件層次,信創代表技術有東方通、寶蘭德等,中間件涉及的范疇比較廣,目前國產中間件還是以消息中間件,SOA中間件等為主,但預期未來會越來越多。程序需要與不同的中間件進行代碼級別的調整適配、測試,工作量和長期影響較大。此外,還有操作系統、服務器硬件、芯片等多方面都需要將信創適配考慮進來。
信創之路面臨重重挑戰,我們要如何實現業務系統想信創環境切換?
行云采用“解耦合 + 自動化”建立起支撐信創工作的開發平臺
代碼是業務完整的、中立的體現。 行云計劃支持實現代碼與周邊現存、未來之技術(信創、非信創)解除耦合。
1、自動化構建能力:把中立的業務代碼,自動化的構建,加以適配到信創、非信創環境,靈活地在兩者間根據需求調配,包括切換不同信創組件的各類場景,應做到對業務開發側無影響,甚至是無感知。業務開發只對業務代碼負責,剩下的事由平臺自動處理。
2、操作系統抽象:通過容器技術隔離操作系統對業務的影響,打造適配業務需求的、精簡的、優化化的基座鏡像(Base Image Provisioning),無論操作系統是否信創、哪家信創,對業務無影響。
3、中間件和數據庫抽象:通過DAPR技術實現接口抽象隔離,業務只對接抽象接口,后臺對接具體的信創、非信創,或是哪家信創組件,在自動化構建和部署時決定。 當然,這涉及到業務代碼的一次性調整,考慮到目前最緊迫的信創改造還是在硬件和操作系統,中間件和數據的解耦工作可以漸進式開展。
打造信創開發平臺的收益
1、業務開發人員關注代碼的業務實現,向信創環境的適配由平臺自動化實現,在又快、又好地落地信創工作同時,原有的業務開發計劃不但不受影響,反而因為有了開發平臺的支撐讓開發本身更聚焦于代碼(而不是各類不同環境),還會讓開發效率更高。
2、業務代碼本身應該是“技術中立”的,開發人員聚焦于業務開發本身,無需學習甚至是關心最終交付后的信創相關技術,由平臺而不是開發人員完成向不同的技術棧適配,測試人員用原有業務功能、性能指標加以測試,再轉產。信創的技術實現由最有必要的、專業技術人員(運維側)負責,這類人員也因為平臺的存在而在技術組件替換、或是引入新技術時得心應手。
3、哪些業務先上信創、哪些后上,哪些業務需要在非信創和信創并行、平滑過渡,哪些業務可能信創環境暫時不能較好支撐,需要切換回非信創以待條件就緒再信創。為了保障業務,這些調度策略將會經常發生,再加之多數據中心的考量,有了平臺幫助實現才能達成靈活高效、游刃有余。
4、信創產品在未來層出不窮,有了平臺的支撐,可以以開發放漸進、張弛有度的方式引入新技術、淘汰落后技術達成最終全面信創、穩定高效的支撐業務發展的最終目標。
二、打造快速響應業務需求的跨系統編排能力
煙囪式系統開發面臨著極大的挑戰
煙囪式系統面臨的挑戰示例
行云信創微服務解決方案,借鑒“橋接模式”解決該問題的思路
設計模式之橋接(Bridge Pattern)定義:橋接模式是將抽象部分與它的實現部分分離,使它們都可以獨立地變化。
借鑒“橋接模式”解決該問題的思路
打造通用的跨系統、跨服務間編排能力
行云打造通用的跨系統、跨服務間的編排能力,以及相配套的微服務和API市場,即有解決現實問題的意義,又為技術演進的必然趨勢做長遠考慮,同時也是實現信創方案靈活性的必要補充。
打造通用的跨系統、跨服務間編排能力
三、打造關鍵資源高效復用線上安全開發能力
線下本地開發,存在挑戰:
· GPU等稀缺設備競爭:人工智能等場景需要專有GPU設備的支持,傳統方式下在本地開發好再上傳到有GPU的服務器調試,不斷反復、效率低下,在多用戶需要使用GPU設備時難以協同。信創GPU出現后因為稀缺性問題更為突出。
· 敏感數據、系統對接:一些敏感的數據即便脫敏后,也難以完全放在本地PC、筆記本上人手一份地開發調試,一些需要關聯的業務系統接口對辦公區全面開放也不現實。
· 疫情下的遠程開發:疫情發展難以預測,遠程辦公、遠程開發場景下的接入和使用的便利性、代碼和系統的安全性都需要考慮。
· 微服務和API調試:隨著微服務和API使用的日趨增多,將不得不把內部、外部的服務和API都向辦公區的PC、筆記本開放以便于開發調試,網絡策略復雜且安全風險高。同時客戶端在與不同版本API調試復雜度高、極不便利。
行云信創微服務應用開發,采用的是Web IDE線上開發模式,可以有效解決前述挑戰,如下圖所示,采用Web IDE的線上開發架構,完美應對這些挑戰。
Web IDE的線上開發架構
Web IDE線上開發模式,為企業帶來的收益:
1、GPU等硬件資源的使用更加方便和高效。敏感數據和關鍵系統無需過度向辦公區開放,多用戶場景下開發和調試這些設備和數據更加便利。
2、大大縮小了數據中心不必要向外暴露的攻擊面,提高安全性。微服務和API的開發調試更加便利。
3、在內部員工或是外部供應商不能到場時,采用安全便捷的遠程開發,保障項目進度。
4、與服務編排能力配合使用,開發一些膠水模塊(如采用函數編程技術)更便利。
5、未來更是有機會在編碼過程中引入AI技術,讓程序員寫代碼更加高效率、更符合規范、更加高質量。
四、解決當下痛點又放眼未來的統籌建設思路
關于未來的統籌建設思路,銀保監會指導文件帶來的金融行業技術發展思路值得借鑒。《中國銀保監會辦公廳關于銀行業保險業數字化轉型的指導意見》銀保監辦發〔2022〕2號文件中,提到了以下四點建議:
1、自主研發:對關鍵平臺、關鍵組件以及關鍵信息基礎設施要形成自主研發能力,降低外部依賴、避免單一依賴。
2、研發平臺:建立能夠快速響應需求的敏捷研發運維體系,積極引入研發運維一體化工具,建設企業級一站式研發協同平臺。
3、模塊復用:主要業務系統實現平臺化、模塊化、服務化,加強企業架構設計,實現共性業務功能的標準化、模塊化。
4、多活中心:優化數據中心布局,構建多中心、多活架構,提高基礎設施資源彈性和持續供給能力。
行云開放漸進、統籌規劃微服務開發能力,即解決眼下痛點,又面向未來發展。
leyu.樂魚創新信創微服務開發平臺
-----------------------