1

我最近一直在研究 Spring-Cloud-Function 和 Spring-Cloud-AWS 以及 Spring 模块提供的所有功能,但是,我不太清楚的一件事是这两者是否正确地结合在一起。

我可以看到 Spring Cloud 功能和 S3 一起使用,但不支持 AWS 的无服务器数据库 DynamoDB。

将 Spring Cloud Function (AWS Lambda) 与 RDS 一起使用是好还是坏?DynamoDB 是一个非阻塞 DBS 是否更适合 Lambda 及其计费结构?

4

2 回答 2

1

我想说带有 Spring 生态系统的 Spring Cloud Function 是从 Lambda 函数访问 DynamoDB 的良好基础。

DynamoDB有一个社区支持的Spring Data 模块。

您可能会查看我的文章,其中我将 Spring Cloud Function 与 Spring Data DynamoDB 结合使用。

于 2019-01-13T19:44:34.547 回答
1

我在我的github上为 AWS Lambda 创建了一个示例 Spring Cloud Function 。它使用 AWS Java SDK 来请求 S3 对象。我还编写了另一个与 AWS SQS 集成的示例。

所以,我认为与 DynamoDB 集成会很容易,因为 DynamoDb 也有Java sdk可用(虽然我之前没有亲自使用过)

恕我直言,我认为因为 AWS Lambda 按执行时间收费,并且启动与 RDS 的连接也可能需要一些时间(与关闭相同)。

除此之外,出于扩展目的,如果您的 Lambda 函数在短时间内被高频触发。每个 lambda 函数都将尝试建立到 RDS 的 sql 连接,并可能最终导致 RDS 开销。

我为我的项目所做的是,我在 Web 应用程序上公开了一个 API 端点,并将流量从 lambda 引导到端点。由于 SQL 连接可以在 Web 应用程序中重用,我想它更有效。

附言。我还没有使用 DynamoDB。所以我不能对此发表太多评论。

于 2018-04-27T17:37:30.427 回答