読者です 読者をやめる 読者になる 読者になる

Fastladderのクローラが重かったり重くなかったりする件

Fastladderのcrawlerのメモリ消費量 - 浅学少識日記帳

俺はWindows Serverで利用している.で,勿論真っ先に確認したのはclawlerを含むFastladderのメモリ消費量だ.Windowsの場合はサービスとして動作するFastladder用のRuby.exeとcrawler用のRuby.exeの2つがある.確認したときの結果は以下の通りだった.

  • Fastladderサービス用Ruby.exeのメモリ消費量 約40MB
  • clawler用Ruby.exeのメモリ消費量 約60MB

両方を併せても約100MBに収まっている.1GBや700MBとかの尋常ではないメモリ消費量とは違う.プラットフォームによってメモリ消費量に大きくバラツキがあるのは何故だろうね…あるとしたらプロセス単位での実行かスレッド単位の実行か等の違いだろうか.

尋常じゃないメモリを食べるのはおそらくFavicon取得のせい。 Faviconを利用しているサイトをクロールすると重くなる。 残りの数十MBっていうのはRSSフィード本体による物だから、上記の場合は先日書いたハックはあんまり効果が無いのかもしれない。

最近はFaviconを取得しつつメモリは軽くしたいな、とか思ってるんですけど。 Faviconをメモリ上に持っちゃうからめちゃくちゃ重くなる。つまり、メモリに持たずにHDDに保存すればいいんですね。 いろいろソース見てたんですけど、複雑に絡み合ってて、直せるけど直すファイルが膨大で面倒な事に。

じゃあデータベースのデータが全部メモリ上にあるのが行けなくて、適宜スワップアウトするのはどうか lang:ja Fastladderで使っているdbはSQLite3 これのPRAGMAでcache_sizeとか設定できるらしいんだけども、Railsでどうすればいいかわからない。

ああMySQLとかにするのはどうか→めんどい

わかんねー!助けてエロい人!