実稼働環境でruby1.9.2のGC::Profilerをアクティブ化すると、パフォーマンスの問題が発生する可能性がありますか?パフォーマンスが重要な本番アプリケーションで使用しても安全ですか?
質問する
1404 次
1 に答える
5
単にアクティブ化するだけGC::Profiler
でパフォーマンスが低下することはありませんが、問題はそれをどうするかです。
と比較してくださいRails.config.log_level
。これを高く設定しすぎると ( のように:notice
)、大量のデータをログ ファイルに書き込む必要があり、必要以上に高い IO が発生し、パフォーマンスが低下します。そのため、:debug
IO 操作を最小限に抑えるために、ロガーが本番環境で に設定されています。
したがってGC::Profiler
、エッジケースのシナリオで特定の結果を有効にしてのみポーリングする場合、問題があるとは思いません。プロファイラーを使いすぎると、速度が低下し始める可能性があります。
しかし、これは、データベース クエリの使いすぎ、複雑なコードの使いすぎ、画像の使いすぎなど、あらゆることに当てはまります。
于 2012-06-28T14:44:08.507 に答える