AWS 宣佈正式推出 Smithy-Java 用戶端架構
AWS 今天宣佈 Smithy-Java 的正式推出,這是一種開放原始碼 Java 架構,用於從 Smithy 模型產生型別安全用戶端和獨立類別。Smithy-Java 解決了企業 Smithy 使用者最常要求的功能之一:生產級的 Java SDK 產生。此架構能直接從模型產生用戶端,從而減少開發人員所需撰寫和維護的程式碼數量。它還能利用虛擬執行緒來避免複雜的非同步模式,進而降低建置現代 Java 應用程式的團隊所需承擔的認知負荷。
Smithy-Java 是以 Java 21 的虛擬執行緒為基礎所建置,能提供封鎖樣式的 API。與複雜的非同步替代方案相比,此 API 更容易使用,且在性能上也更具競爭力。主要優點包括 Smithy 自動產生的型別安全用戶端、透過執行時期通訊協定交換以實現逐步遷移路徑所獲得的通訊協定靈活性。GA 版本包括 Java 用戶端程式碼產生器、對 AWS SigV4 和所有主要 AWS 通訊協定 (AWS JSON、REST-JSON、REST-XML、AWS 查詢和 Smithy RPCv2-CBOR) 的支援、跨多個服務或資料建模共用類型的獨立類型程式碼產生,以及無需程式碼產生步驟即可呼叫 Smithy 服務的動態用戶端。
該架構開拓了兩項架構創新:結構描述驅動的序列化,可在降低 SDK 大小的同時提高效能;以及用於端點規則解析的二進位決策圖 (BDD),可提供顯著的延遲改進。Amazon 內部團隊已經透過 Smithy-Java 在短短數週 (而非數個月) 內建置出完整的服務,且該服務已由內部團隊充分沿用。此架構非常適合已對 Smithy 生態系統做出投資的組織、需要進行與協議無關之開發的團隊,以及使用產生的伺服器 Stub 來建置新服務的開發人員。
若要進一步了解,請參閱我們的部落格文章,並遵循 Smithy Java 快速入門指南操作。