タグ

ブックマーク / download-takeshi.hatenablog.com (10)

  • 非同期で全文検索エンジンgroongaを叩く AnyEvent::Groonga 書いたよ - download_takeshi’s diary

    要するにAnyEventでgroongaを使いたかったのでperlモジュール書きました。んでもって久々にCPANにアップしましたよ、という告白です。 AnyEvent::Groonga - Groonga client for AnyEvent http://search.cpan.org/~miki/AnyEvent-Groonga/ 非同期でガンガン全文検索エンジンを叩きたいな、ということでAnyEvent::Groonga。 なおYappo さんが取り組まれているCライブラリのperlバインディングスとは異なり、AE::Groongaはgroongaディストリビューションに同梱されてるオリジナルの「groongaサーバ」を対象としています。 このgroongaの組み込みサーバは、じつはhttpとgqtp(groonga独自プロトコルらしい)両方をしゃべれます。また普通にローカルのDB

    非同期で全文検索エンジンgroongaを叩く AnyEvent::Groonga 書いたよ - download_takeshi’s diary
    yappo
    yappo 2011/03/01
    そろそろ進めないと。。。
  • websequencediagrams をPerlでごにょごにょ - download_takeshi’s diary

    http://www.websequencediagrams.com というサイトを知ってますか?ZIGOROuさんがブログで使っていたので知ったんですが、実に便利っぽいです。専用のダイアグラム構文を書いてサイトにHTTP POSTするとPNGやPDFでシーケンス図を生成して返してくれる代物です。 構文自体とてもシンプルです。 Alice->Bob: Authentication Request Bob->Alice: Authentication Response こんな感じでとても簡単&スマートなものなんですが、さらにこいつをプログラマブルに書けたら便利かなー、なんて思ってしまい、Perlでモジュール化してみました。 WebService::WebSequenceDiagrams github: http://github.com/miki/WebService-WebSequence

    websequencediagrams をPerlでごにょごにょ - download_takeshi’s diary
    yappo
    yappo 2009/10/28
  • Yahoo-APIを無制限に叩くためのモジュール書いた - download_takeshi’s diary

    ふと気づくとYahooの「ウェブ検索API」の利用制限が変わっていて、今までは同一IPからの利用は5万回/24時間でしたが、10月13日から同一appidからの利用が5万回/24時間となっていました。 http://developer.yahoo.co.jp/newslist/1#64 つまりappidを複数用意して数珠つなぎに使って行けば、同一IPからの利用が事実上無制限となるんだよね!?ということで、久しぶりにPerl Module書きました。 WebService::APIKeys::AutoChanger github: http://github.com/miki/WebService-APIKeys-AutoChanger CPAN : http://search.cpan.org/~miki/WebService-APIKeys-AutoChanger まだCPANにあがって

    Yahoo-APIを無制限に叩くためのモジュール書いた - download_takeshi’s diary
    yappo
    yappo 2009/10/27
    垢バンされても文句言えないレベルw
  • AnyEvent::Intro チョー訳 その1 - download_takeshi’s diary

    最近perl界隈で話題のAnyEventについて、今のうちに習得しておくとid:miyagawaみたいにクールになれて、もしかしてモテるのではないかと思い、よっしゃ、勉強してみるか、ということでドキュメント読み出したんですが、、えらいボリュームですね。心がポッキリ折れました。 い、いや、そんなことではいかん!頑張るぞ。 というわけで、折角なので、チョー訳を残していこうと思います。AnyEventはおさえておきたいけどドキュメントの長さに呆然としてしまったアナタ、ダウンロードたけしと一緒にレッツスタディしようぜ! なお、AnyEventのドキュメントはすごく長いので、ぶつ切りでいきます。最後まで書き綴れるかどうかは不明です。 さらに英語にはあまり自信がないくせに、要所要所ですごく意訳的なことをしています。誤訳などありましたら指摘して下さいませ。 ※原文はこちら http://search.c

    AnyEvent::Intro チョー訳 その1 - download_takeshi’s diary
  • Kamaitachi入門 - download_takeshi’s diary

    Kamaitachiとは、typesterさんが鋭意開発中のperlによるRTMPサーバの実装( =~ Flash Media Server)です。 RTMPサーバのオープンソース実装としてはRed5やWowza、RubyIzumiなどが知られていますが、「perl使いだったらKamaitachiだよ!」ということで、年の瀬の忙しい中、家族の冷たい視線に刺されつつKamaitachiに入門してみようと思います。 Kamaitachi とは まずは周辺情報の整理から。 Kamaitachiの紹介サイト http://bm11.kayac.com/project/kamaitachi/ 作っている人 id:typester id:hide-K typesterさんのブログ http://unknownplace.org/memo/search?q=kamaitachi ソース http://g

    Kamaitachi入門 - download_takeshi’s diary
  • 手軽にTF/IDFを計算するモジュール - download_takeshi’s diary

    情報検索の分野でよく使われるアルゴリズムで「TF/IDF」というものがあります。 ドキュメントの中から「特徴語」を抽出する、といったような用途でよく使われています。 TF/IDFアルゴリズムのくわしい解説はこことかここを見てください。 今回はこのTF/IDFの計算を「簡単」に実現するためのperlモジュールをCPANに上げましたので、ご紹介します。なまえはLingua::JA::TFIDFといいます。 Lingua::JA::TFIDF - TF/IDF calculator based on MeCab. http://search.cpan.org/~miki/Lingua-JA-TFIDF TF/IDF実装の困りどころ TF/IDFの実装を試みた方であればわかると思うのですが、実際にやろうとすると、TF(Term Frequency)の計算はなんら難しくありませんが、IDF(Inve

    手軽にTF/IDFを計算するモジュール - download_takeshi’s diary
  • HTTP::Request::FromLog 書いた - download_takeshi’s diary

    名前のまんまですが、ApacheのアクセスログからHTTP::Requestオブジェクトを作るモジュールをCPANにうpしておきました。 http://search.cpan.org/~miki/HTTP-Request-FromLog-0.00001/ 利用用途ですが、開発環境と商用環境が分かれているような場合に、商用環境のサーバに流れてくるトラヒックを開発環境のマシンにも流してやりたい!というようなケースを想定しています。 単純な発想ですが、商用環境のaccess_logからHTTP::Requestオブジェクトを再生して開発環境のマシンに投げてやれば、一応それっぽいことはできるかなと。 ちなみに内部のエンジン(ログをparseする部分)はデフォルトだとParse::AccessLogEntryというCPANモジュール使ってますが、ここは自由に差し替え可能です。 なので「うちのログフォ

    HTTP::Request::FromLog 書いた - download_takeshi’s diary
    yappo
    yappo 2008/07/01
  • mod_perl2でapacheモジュールを作ろう - download_takeshi’s diary

    mod_perlを使ってApache APIのコアな領域にちょっとだけチャレンジしてみようと思います。 ようするにこれのことです↓ はてなダイアリーより 巷ではmod_perlCGIプログラムを高速化するための技術だという解説も時折みられるが、CGIプログラムを高速化させるという点はmod_perlのもつ特徴の一部に過ぎず、実際にはApache APIPerlから利用することで、Apache内部の処理フェーズにフックする処理を実現できる、という点が質である。 というわけで、早速ハック開始! 今回やりたいことは mod_proxy(もしくはmod_proxy_balancer)に独自の振り分けロジックを導入したい 振り分けロジックはmod_perl2を使ってApacheのリクエスト処理フェーズに細工をすることで実現したい ということにしてみます。 余談ですが、色々とググってみたところ、

    mod_perl2でapacheモジュールを作ろう - download_takeshi’s diary
  • mysqlにperlインタプリタを組み込んでみる - ダウンロードたけし(寅年)の日記

    以前「mysqlに独自関数を組み込む(UDF)」というエントリを書いてみましたが、今回はそれの延長で、mysqlのUDFとしてperlインタプリタを組み込んでみようと言う実験です。 mysqlperlを組み込んで何がうれしいかっていうと、簡単なperlスクリプトで自由にmysqlの関数を作れるようになります。 例えば URLリストから実際にLWPで内容を取得してきて何かの処理をした結果を表示したり perlの正規表現で任意のフィルタリング関数を書いてみたり 何かの更新処理のあとに裏でバッチ処理を走らせるためのトリガースクリプトを関数として組み込んでみたり みたいなことがmysqlの中だけでできるようになります。 車輪の再開発 実は先に述べておきますと、今回のこのアイデアですが、なんと今から5年ほど前にかの有名なBrian Aker氏がLinuxJournalにてEmbedding Per

    mysqlにperlインタプリタを組み込んでみる - ダウンロードたけし(寅年)の日記
    yappo
    yappo 2008/01/15
    自分もMySQLのEngineとしてPerlを組み込もうとしたけど http://svn.coderepos.org/share/lang/c/misc/oreoreperl/oreoreperl.c ここ迄書いて秋田県
  • HTML::Feature - 重要部分を抽出するモジュール - - ダウンロードたけし(寅年)の日記

    以前からCPANで公開していたモジュールがあるんですが、日語での解説ドキュメントがなかったのと、最近大幅にブラッシュアップしたので、せっかくなので紹介記事を書きます。 HTML::Feature - Extract Feature Sentences From HTML Documents 「えいちてぃえむえる::ふぃーちゃー」と読みます。 ブログやニュース記事など様々なHTML文書から「重要部分」を推測して抽出してくれる perl モジュールです。 「重要部分」とはいわゆる「文」のことですね。文抽出とか焦点抽出とか色々な言い方があるかと思いますが、まぁ要するに特徴的な部分を推測して抽出するわけです。 どういうものか。 例えばブログ記事からヘッダーやフッター、その他のナビゲーションブロックを除いた「記事らしき部分」だけを切り取りたい、とします。 ぱっと思いつくのは「特定のコメントタグ

    HTML::Feature - 重要部分を抽出するモジュール - - ダウンロードたけし(寅年)の日記
    yappo
    yappo 2007/10/29
    つかう
  • 1