我最近一直在研究Spring-Cloud-Function和Spring-Cloud-AWS,Spring模块提供的所有功能,然而,有一件事我不太清楚,那就是这两者是否真的能很好地结合在一起。
我可以看到Spring Cloud function和S3一起使用,但没有对亚马逊网络服务的无服务器数据库DynamoDB的支持。
将Spring Cloud Function (AWS Lambda)与RDS一起使用是好的还是坏的做法?DynamoDB是否是一个非阻塞的数据库更适合Lambda和他们的计费结构?
发布于 2018-04-28 01:37:30
我已经在我的github上为AWS Lambda创建了一个示例Spring Cloud函数。它使用AWS Java SDK来请求S3对象。我还编写了另一个与AWS SQS集成的sample。
因此,我认为与DynamoDB集成会很容易,因为也有适用于DynamoDb的Java sdk (尽管我以前没有亲自使用过它)。
我想,因为AWS Lambda按执行时间收费,启动到RDS的连接也可能需要一些时间(关机时也是如此)。
此外,为了扩展的目的,如果您的Lambda函数在短时间内被高频触发。每个lambda函数都将尝试建立到RDS的sql连接,并可能最终导致RDS的开销。
我为我的项目所做的是,我在web应用程序上公开了一个API端点,并将流量从lambda定向到该端点。由于SQL连接可以在web应用程序中重用,因此我猜它更高效。
Ps。我还没有使用过DynamoDB。所以我不能对此发表太多评论。
发布于 2019-01-14 03:44:35
我想说,Spring Cloud函数和Spring生态系统是从Lambda函数访问DynamoDB的一个很好的基础。
有一个社区支持的Spring Data module for DynamoDB。
您可能会看到at my article,我在Spring Data DynamoDB中使用了Spring Cloud Function。
https://stackoverflow.com/questions/49781167
复制相似问题