0

私は現在UbuntuLinuxでRails3を実行していますが、単純なコマンドの応答時間が非常に長いように見えます。たとえば、db:rollbackを呼び出して、4列と0行の小さなテーブルを削除すると、約30秒かかります。

paul@paul-laptop:~/rails_projects/foglift$ time rake db:rollback
(in /home/paul/rails_projects/foglift)
==  CreateResults: reverting ==================================================
-- drop_table(:results)
   -> 0.0013s
==  CreateResults: reverted (0.0014s) =========================================


real    0m27.946s
user    0m26.570s
sys     0m1.284s

ユーザー時間とシステム時間の比率が高いのが気になります。これを診断またはトラブルシューティングする方法はありますか?

どんな助けでも大歓迎です。

ありがとう!ポール

4

1 に答える 1

1

これを大幅に変更することはできません。これは、インタープリター言語と、Web 開発用の強力で柔軟なフレームワークを使用した結果です。

コマンドを実行すると、ロールバックを実行する前に、Ruby インタープリターを Rails 環境とアプリケーションと共にロードする必要があります。これは、Rails サーバーを起動してからロールバックを実行するのと似ています。

これは構築時に苦労するかもしれませんが、利点もあります。移行には、移行の実行方法を正しく決定するためにアプリのクラスを利用するロジックを含めることができます。ここでは、長期的な保守性がはるかに優れています。

また、DB モデルは通常、頻繁に変更されることはなく、超高速よりもパワーが重要です。

于 2011-03-16T19:30:10.897 に答える