2021年年中前端、Java及雲原生等企業IT架構的觀察和預測 - AdamBien
以下是來自AdamBien部落格的觀察和個人預測:
- Kubernetes 贏得了“容器編排大戰”,成為構建類雲環境的標準。所有公共雲都提供替代的編排解決方案,這些解決方案的複雜性和成本效益更高。對於大多數應用程式,誰管理容器並不重要。Kubernetes 成為一種商品——與 Linux 非常相似。Kubernetes 相容性變得不那麼重要,容器映象和執行時的重要性仍然存在。
- 函式即服務FaaS,例如 AWS Lambda、Azure 函式、Google Cloud Functions或Oracle Cloud Functions,因其“殺手級功能”(例如事件偵聽器和整合點)而變得越來越流行。很少有專案嘗試將函式即服務用作通用程式設計模型。這種趨勢應該會繼續下去。
- 公共雲可能很昂貴。在最初的興奮之後,增長較慢的公司開始搬回他們的資料中心。我們會更頻繁地聽到 "repatriation" 一詞。“無聊”的企業應用程式可以更經濟高效地在本地執行。將現有應用程式“提升和轉移”到雲中對終端使用者或業務部門沒有任何好處。將單體重構為“雲原生”微服務會帶來額外的複雜性,但不會立即增加價值。2021 年以後,單體應用將成為另一種“最佳實踐”。
- 雲中的微服務實施起來尤其是執行起來可能更昂貴。我期待著“每月雲賬單驅動開發”的趨勢,為了節省成本,將合理的微服務合併到一個不太合理的單體中。
- 公司開始注意到雲可以更安全、更靈活,並帶有身份驗證、授權、加密和垂直服務,例如影像識別、通知、文字到語音、文字識別、欺詐檢測、金鑰輪換。此類服務很難在本地複製,並且是雲的殺手級用例。在本地執行“無聊”的工作負載並選擇有趣的雲服務會帶來靈活且經濟高效的解決方案,並且應該取代更多教條式的策略。
- 無伺服器應該是 2021 年的新趨勢。幾年前,“無伺服器”是 AWS Lambda 的同義詞。現在我們有了無伺服器容器、資料庫、工作流和事件流。無伺服器僅意味著您可以將服務縮減為零,並停止為縮減的資源付費。我預計無伺服器服務會出現明顯的趨勢。
- micronaut或quarkus等下一代執行時的興起是無可爭議的。它們共享相同的原則:部署發生在構建時,執行時變得簡單、快速和靈活。沒有反射,沒有類載入。我希望Helidon能夠透過重用 micronaut 的一些註釋處理功能來迎頭趕上。
- Quarkus 的受歡迎程度在去年爆炸式增長。很難找到沒有嘗試過 Quarkus的Java開發人員。對熟悉的 API(例如MicroProfile和Jakarta EE 的部分內容)的支援,加上佔用空間小、啟動時間短和GraalVM整合,為 Quarkus 提供了“不公平的優勢”。
- Java 語言的創新速度在過去幾年變得越來越快。我們得到了 Java Records、Text Blocks 和 instanceof Pattern Matching。隨著時間的推移,將使用替代 JVM 語言的專案越來越少。普通 Java 將“足夠好”。
- Java Records 竊取了 Lombok 的主要殺手級功能:getter/setter/builder 生成。Lombok 在企業專案中可能變得不那麼重要。
- 純Web 元件可用於所有瀏覽器。ES 模組隨處可用,並且已經被認為是 JavaScript 模組化的未來。原生 JavaScript 解決方案的生產力和可維護性使得 JavaScript 框架的相關性降低。框架引入了複雜性、維護成本和大量的時間投資。2021 年以後,企業內外趨於簡單“標準”的趨勢可能會加劇。
- Visual Studio Code 中對純 JavaScript 的強大“智慧感知”和“重構”支援將使Typescrite隨著時間的推移變得 不那麼流行。Visual Studio Code 已經將 JavaScript 視為 TypeScript。
- 高效、簡單、現代的 JavaScript 與 Web 元件和 ESM 相容庫(例如lit-html)相結合, 使得 npm 構建在開發人員的機器上是可選的。
- Apache Kafka將更多地被視為不可變的資料儲存、單一的“真實來源”,而更多地被視為 Java Message Service / Jakarta Message Service 的“現代”替代品。
- Apache Kafka 是反應式程式設計 的自然用例,它將使反應式程式設計更加流行。
- Project Loom將消除非反應性資源中構建反應性程式設計的障礙。
- ARM 架構在短期內將在伺服器和 PC 上更受歡迎,並可能在長期內主導市場。
- GraalVM 仍然被低估,通常只用於本地編譯。除了原生編譯,GraalVM 也是一個快速的 JVM 和多語言環境。我期待 GraalVM 的增長以及一個可行的競爭對手的出現。
- JavaFX與 GraalVM 結合提供了獨特的可能性,可以將相同的本機應用程式執行在各種裝置上。您可以開發一次 Java 應用程式並將它們提交到各種應用程式商店 - 甚至是 Apple AppStore。JavaFX 的受歡迎程度應該會增長。
- Project Panama:“互連JVM和本機程式碼”或新的“JNI”變得更加重要和流行。JVM 和 C 程式碼之間的原生整合在機器學習或 GPU 訪問中起著至關重要的作用。
- Visual Studio Code 成為一個可行的 Java、雲和 Web IDE,但是,VSC 功能在 Java 社群中仍未廣為人知。因此,我預計 VSC 在專案中的使用會進一步增加。
- 無伺服器伺服器”,例如payara cloud,是一個有趣的案例。Payara Cloud 遵循與“下一代標準”相反的設計決策。應用伺服器叢集成為 Kubernetes Operator 併為您管理節點。您不關心伺服器,只需要將ThinWAR推送到雲端。Payara Cloud 隱藏了 Kubernetes 的複雜性並顯著簡化了基礎設施。基礎設施與業務程式碼嚴格分離。Payara Cloud 尚未正式釋出,但可能成為在任何地方執行“無聊”應用程式的最高效方式。
相關文章
- 我對雲原生軟體架構的觀察與思考架構
- 雲原生ASP.NET Core程式的可監測性和可觀察性ASP.NET
- 技術沙龍 | 雲時代下的架構演進—企業雲及雲原生技術落地實踐架構
- 雲原生架構及設計原則架構
- 聊聊雲原生和微服務架構微服務架構
- 2019年JavaEE領域預測 - adambienJava
- 雲原生架構概述架構
- 雲原生可觀測套件:構建無處不在的可觀測基礎設施套件
- 阿里雲中介軟體首席架構師李小平:企業為什麼需要雲原生?阿里架構
- 直播預告|企業雲原生 IT 成本治理方案解析
- 360°透視:雲原生架構及設計原則架構
- 分散式系統架構與雲原生—阿里雲《雲原生架構白皮書》導讀分散式架構阿里
- Spring Cloud雲服務架構 - 企業分散式微服務雲架構構建SpringCloud架構分散式微服務
- 雲原生架構下的微服務選型和演進架構微服務
- H5架構和原生架構的區別H5架構
- 解決方案架構、系統架構和企業架構區別架構
- 快速瞭解雲原生架構架構
- 終極指南:企業級雲原生 PaaS 平臺日誌分析架構全面解析架構
- 雲資料庫時代:企業資料架構的雲化智慧重構和變革資料庫架構
- 雲原生架構的七個原則架構
- 10 分鐘構建企業級雲原生框架框架
- 整合spring cloud雲服務架構 - 企業分散式微服務雲架構構建SpringCloud架構分散式微服務
- 業界首發|阿里雲重磅釋出雲原生架構白皮書阿里架構
- 擁抱雲原生,作業幫多雲架構實踐之路架構
- 原生實現的觀察者模式(Observer Model)模式Server
- JS原生實現觀察者模式JS模式
- (四)整合spring cloud雲服務架構 - 企業分散式微服務雲架構構建SpringCloud架構分散式微服務
- 雲上的可觀察性資料中臺,如何構建?
- Spring Cloud微服務分散式雲架構 - 整合企業架構的技術點SpringCloud微服務分散式架構
- 信通院聯合綠盟科技等釋出業界首份《雲原生架構安全白皮書》架構
- 【開源力量】雲原生架構概述架構
- 採用 TOGAF標準的企業架構和企業敏捷性架構敏捷
- 使用 Angular 打造微前端架構的 ToB 企業級應用Angular前端架構
- 企業架構師、解決方案架構師和技術架構師的異同 - Briqi架構
- 探索雲原生時代:技術驅動的業務架構革新架構
- 以業務需求為中心的雲原生架構體系建設架構
- .NET 雲原生架構師訓練營(建立系統觀)--學習筆記架構筆記
- java Spring Cloud企業快速開發架構之Spring Boot Starter的介紹及使用JavaCloud架構Spring Boot