0

Amazonのディスカッションフォーラムでは、ここに質問を投稿している間違いがあったので、504特定のPOSTリクエストでのゲートウェイのタイムアウト

Elastic Beanstalkを使用して単一のnodejs(api)インスタンスを実行しています。 4か月間使用した後、突然ユーザーを作成するためのPOST要求が失敗し、504ゲートウェイのタイムアウトが発生しました。その間にコードや弾力のあるbeanstalkの設定は変更されませんでした。 残りの要求は正しく機能しています。ローカルでテストするときにエラーはありません。 nginxエラーログでは、次のようになります。 アップストリームから応答ヘッダーを読み取っているときにアップストリームタイムアウト(110:Connection timed out)。 Apacheをプロキシとして試したところ、これと同様のエラーが発生しました。 Node.jsの

  • Nodejs 4.3.0
  • nginxの1.8.1を実行している

    環境

    • 64アマゾンのLinux 2016.03バージョン2.1.0

    私たちは外のほとんどすべてをしようとした後、オプション。 提案がありますか?事前に

    おかげで、 のMk

  • +0

    ローカルサーバーから実行しようとすると、ポストリクエストは機能しますか?サーバにsshを試してください(これはeb cliを使って行うことができます)。そして、あなたのリクエストをlocalhost:に投稿してください。 –

    +0

    私のサーバーに送って、localhost:8081とリモートeb urlを使って投稿要求を試みました。 wgetを使用すると、localhostを試しているときに次のような応答が表示されます。 HTTP要求が送信されました。応答を待っています...データが受信されませんでした。 リモートeb URLを試してみると、504ゲートウェイのタイムアウトがあります。 – mkshake

    +0

    @mkshakeあなたはその問題を修正しましたか?私は同じような問題があります – demsey

    答えて

    0

    あなたはELBを使用している場合は、高い時間値に「アイドルタイムアウト」を設定してみてください。あなたはAWS CLIを使用してこの操作を行うことができます。

    aws elasticbeanstalk update-environment --environment-name your-env-name --option-settings Namespace=aws:elb:policies,OptionName=ConnectionSettingIdleTimeout,Value=300 
    

    私はあなたがUIからこの操作を行うことができるかどうかわからないが、私はそうは思いません。

    +0

    現在、ロードバランサは実行されていません。オプションConnectionSettingIdleTimeoutは、ロードバランサを対象としています。 私は、nginxプロキシのタイムアウトで多くの演奏をしましたが、POST要求が終了するまでに112msと1500msの間しかかからないので、この値を大きくすると問題が解決するとは思えません。 – mkshake

    関連する問題