タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

Rubyとeventmachineに関するseiryoのブックマーク (3)

  • EventMachine によるクローラ実装例 - milk1000cc

    グローバルな並列リクエスト数と、ホスト毎の並列リクエスト数を考慮した試作版です。 もう少し改善出来そうな気がします。 require 'rubygems' require 'em-http' require 'addressable/uri' PARALLEL_REQUEST_NUM = 50 PARALLEL_REQUEST_PER_HOST = 2 uris = File.readlines(File.join(File.dirname(__FILE__), 'urls.txt')). map { |v| Addressable::URI.parse(v.strip).normalize rescue nil }.compact pending = { :http => 0, :http_per_host => Hash.new { |h, k| h[k] = 0 } } EM.run

    EventMachine によるクローラ実装例 - milk1000cc
  • EventMachineを使ったクローラの書き方の足がかり

    Photo by pnoeric いま、PhotoShareで使うために、高速なEvent Driven方式のネットワークライブラリ、EventMachineを調べています。 このEventMachine、ほとんどの場合はサーバを作るときに使われていますが、HTTPクライアントの機能も実装されており、実はクローラの様な物を作るときにも利用することができます。 今回はこっちを使いたかったのですが、ググってもほとんど情報が出てこなかったので、Seattle.rbで相談したところ、Aaronさん(RubyKaigi 2008でプレゼンしているのをustで見てコンタクトしました)からサンプルが貰えたので、それを元に、同時接続する様にしてみました。 このコードだけだと役には立ちませんが、情報が少なかったので参考に上げておきます。 require 'rubygems' require 'eventma

    EventMachineを使ったクローラの書き方の足がかり
  • EventMachine

    Posted by Technohippy Tue, 09 Jan 2007 06:32:00 GMT http://eventmachine.rubyforge.org/wiki/wiki.pl勝手訳 Ruby/EventMachine Ruby/EventMachineはシングルスレッドなネットワークソケットエンジンを提供する外部ライブラリです。これはReactorPatternを使ってネットワークI/Oをハンドルするように実装されています。EventMachineは特にパフォーマンスと使いやすさに注力しています。 バックグランド EventMachineはRubyでネットワークを意識したプログラム、例えばIPC、分散システム、メッセージキュー、リモートオブジェクト呼び出しなど、を書く必要が出てきたことから作り始めました。私たちはC++のネットワークライブラリでよく見られるイベント駆動

  • 1