33

Heroku (heroku_san gem を使用した Ruby on Rails アプリ) にデプロイするたびに、次のように表示されます。

Cleaning up the bundler cache.
Would have removed sitemap_generator (2.0.1.pre1)
Would have removed newrelic_rpm (3.5.5.38)
Would have removed httparty (0.10.0)
Would have removed thor (0.16.0)
Would have removed ckeditor (3.7.1)
Would have removed fog (1.8.0)
Would have removed rake (0.9.2.2)
Would have removed dalli (2.6.0)

(または、以前のデプロイから持っている可能性のある他の古い gem) Heroku アプリのバンドラー キャッシュを消去するにはどうすればよいですか? 私は実行しようとしました:

heroku run bundle clean --force

しかし、それは役に立ちませんでした。

Heroku でバンドラーのキャッシュを消去する方法を誰か教えてもらえますか? または、このメッセージを無視する必要がありますか?

4

2 に答える 2

22

これは、Bundler に最近導入された変更によるものです。私たち (Heroku) は、--dry-runモードで実行されていると判断した理由を追跡し、修正する必要があります。

当面の間、これは有害ではなく、問題を引き起こすことはありません。残念ながら、キャッシュが心配な場合に手動でキャッシュをクリアする方法はありません。

于 2013-02-04T23:48:29.747 に答える
5

これは、これまでにデプロイしたすべてのHerokuアプリでも発生しますが、まだ問題は発生していません。

これが、あなたがそれについて心配する必要がないと私が思う理由です:

  • サーバーに大量のgemが保存されていても、アプリの速度が低下することはありません。ちなみに、必要のない大量のgemをGemfileに投入したとしても、顕著なパフォーマンスへの影響は、アプリの最初の起動時間とその後のメモリ使用量にある可能性があります。そして、それらのgemGemfileにない場合、アプリのパフォーマンスへの影響はゼロになるはずです。
  • Herokuには無料アカウントのナメクジのソフト制限が100MBありますが、私自身の事例証拠によると、これにはGemfileから削除したgemは含まれていません(以下のワイルドな推測が正しい場合は理にかなっています)。

そして、Herokuがバンドラーキャッシュをクリーンアップしない理由についての大げさな憶測があります。

メモリはハードドライブのスペースよりも高価であるため、ほとんどのgemはハードドライブ上でわずかなスペースを占める可能性がありますが、大量のgemをメモリにロードする必要がある場合は合計することができます。ただし、gemがGemfileにない場合、そのgemはメモリにありません。また、後で気が変わってGemfileに再度追加したい場合に備えて、gemをドライブに保存しておくよりも、削除する(場合によっては後で再ダウンロードする)方がコストがかかる可能性があります。

于 2013-02-01T00:19:09.480 に答える