RubyのBenchmarkモジュールを使って、sleepメソッドが効いているか確認してみる。
open-uriとnokogiriを使ってホテル予約サイトをスクレイピングしているが、sleepメソッドがきちんと効いているか気になったので、Benchmarkモジュールを使って計測してみた。
方法
sleepメソッドを含むメソッドと含まないメソッドを2種類作る。
コード
Benchmark.bm(15) do |x| #sleepありの詳細ページ情報メソッド x.report "hotel_infor" do push_hotel_information_detail(row) end end Benchmark.bm(15) do |x|#sleep無しの詳細ページ情報メソッド x.report "hotel_infor_no" do push_hotel_information_detail_no_sleep(row) end end
処理はホテル予約サイトの情報を取得して配列に入れいている。
結果
user system total real hotel_infor 0.150000 0.010000 0.160000 ( 4.790870) user system total real hotel_infor_no 0.170000 0.000000 0.170000 ( 1.675842)
わかりやすく3秒スリープを入れてみたが、動作を確認できた。
参考記事。 Rubyでベンチマークをとる