0
私はPOSTリクエストを消費し、リクエストから関連情報を記録し、200 OKで応答するエンドポイントを持っています。それはそれは迅速に対応し、いくつかの時間を取ることができ、ログエントリを処理することが重要ですので、私はこの変更できる場合、私は思ったんだけど:これまですぐに応答してから、コントローラで後続の処理を行いますか?
def my_endpoint
generate_log_entry
render nothing: true
end
を:
def my_endpoint
render nothing: true
generate_log_entry
end
私はかなり確信しています私はできません - render
への呼び出しは、後でRackミドルウェアライフサイクルで提供するためのレスポンスを構築するだけだと思います。ログを非同期プロセスに委譲しているのは私の唯一のオプションですか?
簡単に言えば、長時間実行しているプロセスがある場合は、応答がすぐに送信されるかどうかにかかわらず、リクエスト処理パイプラインに関係しないようにしてください。メソッドが実行されます。 –