0

私は現在、Web サイトにアクセスして画面をスクレイピングし、テーブルにいくつかのレコードを作成する rake タスクを含む Rails アプリケーションを持っています。この特定のスクリプトを実行すると、完了するまでに約 10 秒かかります。このパフォーマンスは遅すぎて、アプリケーションの要件を満たしていません。(注: このパフォーマンスは、コマンド ラインから rake タスクを実行して達成されました)。

質問 - レーキ タスクを通常のアプリケーション メソッドに変換した場合、パフォーマンスの向上が期待できます。そうであれば、その理由は何ですか?

4

1 に答える 1

2

私見、レーキタスクを通常のランナーアプリに分割しても、パフォーマンスは向上しません。これは、レールのすべてのコンポーネントをロードする必要があり、それが遅いためです。アルゴリズムロジックの最適化を検討することをお勧めします。

より速く実行できなかったタスクは、DelayedJobs、Resque、または cron を使用してバックグラウンド ジョブとして実行する必要があります。

于 2012-03-06T00:10:20.733 に答える