backend fastcgi プロセスが落ちている場合の挙動

fastcgi プロセスをスタンドアローンで動かしていて、Webサーバーからそれを使うという場合、apache であれば fastcgi プロセスが落ちていたら 502 Bad Gateway が出るらしいのだけど、lighty だとでないみたい。

lighty から fastcgi へつなぐ方法 2 種類試した。

  1. socket ファイルで fastcgi へ
  2. host:port で

1 の場合、対象 socket ファイルが有効になるまで待ち続ける(!)

fastcgi プロセス再起なんかなどでは起動したらそのまま実行されるため便利かもしれないけど、downtime が長いとクライアントを溜め込んでしまうことになりそう。

2 の場合、指定ポートへの接続が reject されると lighty もクライアントの接続を切る。えー。ここで 502 とか返せばいいのに。

どっちにしろあんまり行儀が良くなくて使いにくいという感じ。1 よりは 2 のほうがいいかな。