AWS 宣布正式推出 Smithy-Java 客户端框架

发布于: 2026年4月6日

AWS 今日宣布正式推出开源 Java 框架 Smithy-Java,该框架能够根据 Smithy 模型生成类型安全的客户端以及独立类。Smithy-Java 解决了企业级 Smithy 用户最迫切的需求之一:生成生产级的 Java SDK。 该框架直接通过模型生成客户端,从而减少了开发人员需要编写和维护的代码量。它还通过利用虚拟线程来避免复杂的异步模式,从而降低了现代 Java 应用程序构建团队的认知负荷。

Smithy-Java 基于 Java 21 的虚拟线程构建,提供了一种阻塞式的 API,不仅使用门槛更低,而且在性能上与复杂的异步替代方案不相上下。主要优势包括:从 Smithy 自动生成类型安全的客户端;具备协议灵活性,支持运行时协议切换,从而实现渐进式迁移路径。这个正式发布的版本包含 Java 客户端代码生成器,并支持 AWS SigV4 以及所有主要的 AWS 协议(包括 AWS JSON、REST-JSON、REST-XML、AWS Query 和 Smithy RPCv2-CBOR);此外,它还支持独立的类型代码生成功能,用于在多项服务之间共享类型或进行数据建模;并提供了一个动态客户端,无需执行代码生成步骤即可调用 Smithy 服务。

该框架开创了两项架构创新:模式驱动的序列化,可在提升性能的同时缩减 SDK 体积;以及二元决策图(BDD),用于端点规则解析,可实现显著的延迟优化。借助 Smithy-Java,Amazon 内部团队在数周内(而非数月)完成了完整服务的构建,目前已有多个内部服务团队开始依赖该框架。该框架非常适合已投入 Smithy 生态系统的企业、需要协议无关型开发模式的团队,以及希望利用生成的服务器存根构建新服务的开发人员。

要了解更多信息,请访问我们的博客文章 ,并参阅 Smithy Java 快速入门指南