タグ

ブックマーク / blog.yappo.jp (4)

  • YappoLogs: Xangoというクロウラーフレームワークを使ってみる

    Xangoというクロウラーフレームワークを使ってみる Xango XangoPerlで書かれた汎用クローラーフレームワークです。 イベント型フレームワークPOEを使用することにより高速なクローリングが可能です。 実装にもよりますが、単一プロセス内でインデックシングや文字コードの変換等の処理を 同時に行うアプリケーションでも1秒に5~8 URL、1時間で 18000 ~ 22000 URLの処理が行えます。 ドキュメントはperldocのみっぽいので、日語の情報を残す意味で使い方のメモをば。 相当端折って書いてます。 Xangoを使ったクロウラーを書くには、制御用のにPOEセッションを作る必要があります。 Xangoを制御するためのモジュールを適当な名前で作っておくのがスマートかと思います。 とりあえずセッション作成を行う処理を書きます sub spawn { my $class = s

    UnderDone
    UnderDone 2005/08/08
  • YappoLogs: Senna+MySQLをより超高速にするパッチ

    Senna+MySQLをより超高速にするパッチ 当者比50~100倍程のスピードアップ(クエリ/テーブル構造による)のパッチです。 MySQL(特にFullText boolean mode)のlimitの実装はある意味効率の悪い実装になっている。 例えば、limit 100000,100といったクエリを投げると100100行分のデータをディスクから読み込むのである。 まぁ、whereなどの条件に一致する100000件のレコードを先に確定させなければいけない訳で当然といえば当然である。 order byとか使ってたらなおさら。 無論SQL_CALC_FOUND_ROWSなんか使ってると全件確定させなきゃいけないから大変。 当然これらはindexを使用していない時の挙動だと思う。 indexのみが使われたクエリの挙動は未確認だけど。 さて、ここから題。 では、Senna+MySQLの挙動は

    UnderDone
    UnderDone 2005/07/02
  • YappoLogs: 既存のページにもんたメソッドを簡単に組み込むツールを作った

    既存のページにもんたメソッドを簡単に組み込むツールを作った いま巷を騒がせているもんたメソッドですが、あのプレゼンを再現しようとしたツールが2つ登場しています。 もんたメソッドなプレゼン作成ツール もんたメソッドなプレゼンツール in XUL miyagawaメソッドとかカカクメソッドとか、○○メソッドという用法が普及しそうな感じですな。 実は、自分も作ろうとしていた所なのですが、これらプレゼン風のツールとは違い 簡単にWebサイトに貼り付けられる物を作りたかったのです。 せっかくなのでサクッと作りました。 以下もんたメソッド for Webサイトによる説明です(塗りつぶされてる所はクリックです) もんたメソッド for Webサイト とは? どんなページにも簡単にもんたメソッドを組み込む為の、小さいJavaScriptです。 このページのように、重要そうな文字を隠しておくことが出来ます。

  • YappoLogs: POE::Component::Client::MSNで問題があったので直した

    POE::Component::Client::MSNで問題があったので直した 結構前からPOE::Component::Client::MSNを使ったアプリケーションを運用していたのだが 4月ぐらいからサインインできなくなっていた。 対処方法を見つけたのでメモっとく。 ./POE/Component/Client/MSN.pmの101行目くらいにある、HTTP/1.1をHTTP/1.0に書き換える。 これだけである。 原因特定しようとして、かなり深いところまで追跡したのにorz 多分、先月にmsnのサーバ仕様が変更されたのだと思う。 Data::Dumperして、調べたらRespons HEADは取れていたので、POE::Component::Client::HTTPの不具合なのかもしれない。 パケットまで見てないけど、チャンク形式でbodyが構成されてたりして・・・ winのTCPって

    UnderDone
    UnderDone 2005/05/31
  • 1