現在、私は、apiゲートウェイエンドポイントからトリガされるラムダ機能をセットアップしました。目標は、レスポンスを形成し、最初にコールバックをトリガーし、次にsnsとやり取りして他のラムダ関数に作業を渡すことによって応答時間を低く抑えることでした。しかし、私は、端点に対してブレーズメーターを実行しているときには、奇妙な動作に気づいています。主に応答時間が継続的に増加しているように見えます。さらに、502と504の応答コードが返されますが、500の応答コードはありません(正しく理解すれば、429応答がAPIゲートウェイの500にマップされているため、非同期アクションを削除すると、妥当な応答時間が表示され、エラーは発生しません。これが観測された振る舞いであり、nodejsイベントループでアイテムがキューに入れられる順序は、応答が実際にトリガされたとき、またはラムダがレスポンスを送信する前にイベントキューが空になるのを待っているかどうかに影響しませんか?後者の場合は、非同期相互作用のエラーが502 & 504の応答の原因になりますか?lambda + apiゲートウェイはいつ実際にクライアントに応答を送信しますか?
2
A
答えて
4
はアイテムが応答が実際にトリガーされたときnodejsイベントループにない 効果をキューに入れられるか、イベントキューのためのラムダだけ 待ち時間が応答を送信する前に空にしない順序をしますか?
デフォルトでは、NodeJS 4.2ラムダファンクションは、NodeJSイベントループが空になるのを待ってから、APIゲートウェイを終了して応答を送信します。 callback
関数を呼び出すと、Lambdaコンテナにイベントループがクリアされると終了するように通知されます。 APIゲートウェイは、ラムダ関数が存在するまで応答を返しません。 callback
関数を呼び出すとすぐにラムダ関数を終了させるオプションを設定できますが、バックグラウンドで実行している他のものは強制終了されます。
後者の場合、非同期相互作用における誤差は502の& 504応答の 原因だろうか?
「非同期のやりとり」とは、作成しているSNSへの呼び出しを意味し、それらが失敗し、正しくエラーを処理しなかった場合は、呼び出し全体がエラーを返す可能性があります。 502エラーが発生した場合は、エラーが何であるかを確認するためにLambda function's logs in CloudWatch Logsを確認する必要があります。この場合、役に立つ情報を提供するかもしれないenable CloudWatch Logs for API Gatewayもあります。
関連する問題
- 1. Spring統合:クライアントhttp受信ゲートウェイへの応答を送信
- 2. 応答後に実行するExpress/Connectミドルウェアをクライアントに送信
- 3. HTMLからAPIゲートウェイ経由でPython Lambda関数にPOSTリクエストを送信
- 4. phpunit - サービスに接続する偽のAPI応答または実際の応答?
- 5. 私たちのサーバーからクライアントにHTTP応答を送信
- 6. conversse.js chatBoxInitializedイベントはいつ実際に送信されますか?
- 7. クライアントに継続的に応答を送信
- 8. クライアントに複数の応答を送信する
- 9. Ajaxを介してフォームを送信し、APIレスポンスに基づいてクライアントに応答する
- 10. Node.JSは、API呼び出しのループの後に応答を送信します。
- 11. クライアントに送信する前の高速インターセプト応答
- 12. URLにどのように応答を送信しますか?
- 13. なぜwakandaクライアントが応答として012を送信する
- 14. TCPゲートウェイで応答を送信した後、Spring統合のserviceActivatorにメッセージを送信
- 15. aws api gate wayで静的応答を送信できますか?
- 16. クライアントは応答を取得している間にhttp要求を送信できますか?
- 17. 応答がクライアントに送信された後にDjangoでコードを実行します
- 18. node.js APIの応答が終了していません。「送信後にヘッダーを送信できません。」
- 19. IB APIで応答を受信中にリクエストを送信する方法は?
- 20. http応答を送信した後に実行Java
- 21. ServiceAuthorizationManagerの例外は常にXML応答を送信します
- 22. フォームの送信応答を送信
- 23. JavaのクライアントにHTTP応答を正しく送信する方法
- 24. API Gatewayへの応答を送った後でも、AWS Lambdaはバックグラウンドで実行されます
- 25. Microsoft Bot Framework - サードパーティAPIから応答を送信する方法
- 26. FB.getLoginStatus応答に実際に時間がかかります
- 27. Socket.ioは送信者に応答します
- 28. AWS APIゲートウェイの応答が502の "Bad Gateway"を生成する
- 29. StrutsはAsyncContextから応答を送信します
- 30. 送信ボタンが応答しないOnclick
ラムダの引き裂かれたコードを実行しながら、ApiGatewayを起動する方法を見つけましたか? –