Spring Cloud Platfom的特定功能
AWS具有某些特定于平台的数据类型,包括消息批处理,这比单独处理每个数据集要高效得多。要使用这些类型,您可以编写依赖于这些类型的函数。或者,您可以依靠Spring从AWS类型中提取数据并将其转换为Spring Message
。为此,您要告诉AWS函数具有特定的通用处理程序类型(取决于AWS服务),并提供类型为Function<Message<S>,Message<T>>
的bean,其中S
和T
是您的业务数据类型。
如果类型Function
的bean不止一个,则可能还需要将Spring Boot属性function.name
配置为目标bean的名称(例如,使用FUNCTION_NAME
作为环境变量)。
支持的AWS服务和通用处理程序类型如下所示:
服务 | AWS类型 | 通用处理程序 | |
---|---|---|---|
API Gateway |
|
|
|
Kinesis |
KinesisEvent |
org.springframework.cloud.function.adapter.aws.SpringBootKinesisEventHandler |
例如,要在API网关后面进行部署,请在您的AWS命令行中使用--handler org.springframework.cloud.function.adapter.aws.SpringBootApiGatewayRequestHandler
(通过UI)并定义类型为Function<Message<Foo>,Message<Bar>>
的@Bean
,其中Foo
和Bar
是POJO类型(数据将由AWS使用Jackson进行编组和解组)。
更多建议: