私は現在、IoT製品の通信を処理するためのAmazon EC2インスタンスを使用しています(開発段階)。私は、将来的にデバイスの増加を克服するために、インスタンスの仕様を拡張する経験はあまりありません。ですから、私はAWS Lambdaを使用し、EC2インスタンスのすべてのビジネスロジックをラムダに移すことを考えています。しかし今、理解できないことがいくつかあります。AWS Lambda for IoT
ラムダ関数の事前設定の下で、ラムダ関数のメモリ割り当てを設定できます。 512MBのメモリを設定した場合、私の機能が512MB以上のメモリを必要とする場合、これは自動的に拡大されますか?
実行ごとにラムダ関数のために設定したメモリはありますか?たとえば、30件のリクエストが同時に処理される必要があります。ラムダ関数を30回実行すると、30回の実行で最大512MBのメモリしか使えないということでしょうか?または、実行ごとに512MBのメモリを使用できますか?
マニュアルには、Amazonが関数のインスタンスを再利用する可能性があることが記載されています。したがって、同時に2つの要求があり、Amazonが機能の既存のコピーを再利用すると、一度に2つの要求を処理する可能性がありますか?
リクエストが行われるたびにデータベースに接続されます。この接続は保持されますか?それが保持されている場合、関数インスタンスが終了したときに接続は終了しますか?
こんにちは、ありがとうございました!それは私のためにそれをはるかに明確にします。フォローアップの質問。問題番号4の場合、クエリまたは更新を実行するたびにdb接続を閉じるとどうなりますか?長期的なデータベース接続を避けるための素晴らしい解決策でしょうか? –
接続を開いたり閉じたりするたびにいくつかの問題は修正できますが、通常は遅いラムダ関数のような他の問題が発生する可能性があります。その多くは、正確にどのデータベースを使用しているかによって異なります。 –