|
该版本仍在开发中,尚未被视为稳定。对于最新稳定版本,请使用 spring-cloud-function 5.0.0! |
介绍
Spring Cloud Function 是一个具有以下高层目标的项目:
-
通过函数促进业务逻辑的实现。
-
将业务逻辑的开发生命周期与任意特定运行时目标解耦,使同一代码可以作为网页端点、流处理器或任务运行。
-
支持无服务器提供商间统一的编程模型,并支持独立运行(本地或PaaS)。
-
在无服务器服务商上启用 Spring Boot 功能(自动配置、依赖注入、指标)。
它抽象化了所有运输细节, 基础设施,使开发者能够保留所有熟悉的工具 以及流程,并坚定地专注于业务逻辑。
这里有一个完整、可执行、可测试的 Spring Boot 应用 (实现简单的字符串作):
@SpringBootApplication
public class Application {
@Bean
public Function<String, String> uppercase() {
return value -> value.toUpperCase();
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
它只是一个 Spring Boot 应用,所以可以搭建、运行和
测试方式,无论是本地还是CI构建,就像其他Spring
启动应用程序。这功能来自java.util和通量是响应式流 发行人来自反应堆项目。函数可以是
通过HTTP或消息访问。
春云函数具备以下功能:
-
编程风格的选择——响应式、命令式或混合式。
-
函数组合与适应(例如,将命令式函数与反应函数组合)。
-
支持多输入和多输出的响应式功能,使合并、连接及其他复杂的流作都能由函数处理。
-
输入和输出的透明类型转换。
-
针对特定目标平台的部署打包功能(例如 Project Riff、AWS Lambda 等)
-
比如适配器,将功能暴露给外部世界,比如HTTP端点等。
-
部署包含此类应用上下文的JAR文件,并使用隔离的类加载器,这样你可以将它们打包到一个JVM中。
-
适用于AWS Lambda、Azure、Google Cloud Functions,以及可能的其他“无服务器”服务提供商的适配器。