1

私は最近、Spring-Cloud-Function と Spring-Cloud-AWS と、Spring モジュールが提供するすべての機能を調べてきましたが、2 つが適切に連携するかどうかはあまり明確ではありません。

Spring Cloudの機能と多分S3を併用している様子が見られますが、AWSのサーバーレスDBであるDynamoDBのサポートはありません。

RDS で Spring Cloud Function (AWS Lambda) を使用することは、良い習慣ですか、悪い習慣ですか? DynamoDB がノンブロッキング DBS であるという事実は、Lambda とその課金構造により適していますか?

4

2 に答える 2

1

githubで AWS Lambda 用のサンプル Spring Cloud Function を作成しました。AWS Java SDK を使用して S3 オブジェクトをリクエストします。AWS SQS と統合した別のサンプルも作成しました。

したがって、DynamoDB 用のJava SDKも用意されているので、DynamoDB との統合は簡単だと思います(ただし、個人的には使用したことがありません)。

私見ですが、AWS Lambda は実行時間によって課金され、RDS への接続の開始にも時間がかかる可能性があるためだと思います (シャットダウンの場合も同様です)。

それに加えて、スケーリングの目的で、Lambda 関数が短期間に高頻度でトリガーされた場合。各ラムダ関数は RDS への SQL 接続を確立しようとし、最終的に RDS にオーバーヘッドを引き起こす可能性があります。

私が自分のプロジェクトで行ったことは、Web アプリケーションで API エンドポイントを公開し、トラフィックをラムダからエンドポイントに向けることです。Web アプリ内で SQL 接続を再利用できるので、より効率的だと思います。

Ps。DynamoDB はまだ使用していません。そのため、私はそれについて多くのコメントをすることはできません。

于 2018-04-27T17:37:30.427 に答える