こしごぇ(B)

旧:http://d.hatena.ne.jp/koshigoeb/

2012-08-01から1ヶ月間の記事一覧

重い腰を上げてテストにかかる時間の短縮を試みる

とあるプロジェクトの通しテストについて、MRIとREEで設定を変えて時間を計ってみた。 その後、parallel_tests を試してみた。 .rbenv-vars RUBY_HEAP_MIN_SLOTS=1000000 RUBY_HEAP_SLOTS_INCREMENT=1000000 RUBY_HEAP_SLOTS_GROWTH_FACTOR=1 RUBY_GC_MALLOC…

New Relic がどうやってメトリクスを集めているのか気になったのでちょっと調べてみた

Passenger の場合について簡単に調査。PhusionPassenger.on_event(:starting_worker_process) で、NewRelic::Agent.after_fork を実行している。 NewRelic::Agent.after_fork は、Thread.new してワーカースレッドを作っている。という事で、Passenger のワ…

Homebrew の patches で圧縮ファイルを指定する場合

patch の流れはざっくりと以下の様な感じ。 curl で %03d-homebrew.diff という名前で保存する 圧縮されているか判別して適切な拡張子を付け足す(mv する) 圧縮されている場合は展開する %03d-homebrew.diff という名前のファイルを patch する 圧縮ファイル…

Mechanize で fetch した HTML を任意のウェブブラウザに表示させる簡単な方法を知りたい

Ruby の Mechanize を使って書いたプログラムの途中経過を簡単に目視点検する方法を知りたい。以下は、Mechanize::HTTP::Agent#fetch の後処理として無理矢理実装したもの。HTML をローカルファイルに書き出して、それをウェブブラウザに読み込ませるという…

Mechanize で Cookie を手動でセットする

Mechanize::Cookie.new のパラメータ指定でミスっていたので自戒のメモ。 require 'rubygems' require 'mechanize' require 'logger' agent = Mechanize.new do |agent| agent.log = Logger.new($stdout) end [ 'http://www.google.com', 'http://www.google…

Phusion Passenger Enterprise

https://www.phusionpassenger.com/enterprise とても気になる。英語読めない。 Rolling Restarts Unicorn とかは、既存プロセスと新規プロセスで2倍のメモリが必要な実装になっている。 一方、Phusion Passenger Enterprise では、一つずつ置き換えていく方…

OSX 用のドキュメントブラウザ Dash

App Store を眺めていたら、Dash というドキュメントブラウザがある事を知りました。 http://kapeli.com/dash/ マシンのメモリに大分余裕が出来たこともあり、ダウンロードして使ってみることにしました。なんとなく良さそうな印象ですが、用意されているド…