タグ

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

  • 非同期で全文検索エンジン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
  • Javaで暗号化したデータをPerlで復号化しようとしたら大変だった件 - download_takeshi’s diary

    JavaでRijndael(AES)で暗号化されたデータをPerlで復号化しようと思います。 「暗号方式と秘密鍵だけ聞いておけば簡単にデコードできるっしょ、余裕っしょ」とタカをくくっていたら、思いっきり天罰がくだりました。久しぶりにハマったのであります。 ちゃんと確認しておくべきだった情報 まずは暗号方式と秘密鍵だけでなく、以下の情報をしっかりと確認しておく必要アリでした。 暗号アルゴリズム 秘密鍵 秘密鍵の長さ ブロック暗号化モード IV(Initialization Vector:初期化ベクトル) padding方式 暗号のことちゃんと勉強した事がないので、なんだかよくわからんけど、必要らしい。 せめて事前にここらへんを読んで勉強しておけばよかった。 ぱせらんメモ http://d.hatena.ne.jp/pasela/20100612/crypto DESに代わる次世代暗号「AES

    Javaで暗号化したデータをPerlで復号化しようとしたら大変だった件 - download_takeshi’s diary
    kwry
    kwry 2010/08/23
  • 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
  • 汎用的なXMLSocketサーバを書いた - download_takeshi’s diary

    FlashのXMLSocketサーバ「Hoppy」をリリースしました。 Hoppy - Flash XMLSocket Server http://github.com/miki/Hoppy/tree/master githubにあげてあります。そのうちCPANにも反映されると思います。 HoppyはFlashのXMLSocketサーバのperl実装です。いわゆるプッシュ型のwebアプリケーションを簡単に実装することを目標としたTCPサーバです。 内部はperlのPOEによるイベントドリブンな実装なので、POEの知識がある方であれば、かなり柔軟にサーバの振る舞い自体を変更したり拡張したりすることができます。逆にPOEを知らない人でも、いくつかの決めごとに従うだけで、簡単に機能を搭載していく事ができます。 基的な決めごと Hoppyはある程度の「決めごと」を前提とした、汎用的で拡張可能なX

    汎用的なXMLSocketサーバを書いた - download_takeshi’s diary
  • Cache::FastMmapって初めて知りました - download_takeshi’s diary

    巨大でかつupdateが頻繁に走ってかつ古いデータの消し込みなんかも随時行わなければならないようなデータを「mysqlでテーブルを分割して、読み書きをマスタスレーブにして、、、」みたいにハンドリングするのがなんか面倒で、なんか良さげな方法はないかなと思っていたら、今日endeworksの牧さんから「Cache::FastMmapがぴったりなのでは?」ということで教えてもらいました。 「mmapってなーに?」という状態なので、まだよく理解できてないけど、試してみたらなんとなく雰囲気がわかりました。 牧さんが言ってたのは、これを使って大規模データを細切れのshare_fileにしておいて、それを別途デーモンプログラムかなにか作っておいて、そいつがクエリー処理を受け付ける、ってイメージですね。きっと。 うん。うまく使えばこれは良いかもしれない。結構おもしろい。別プロセスからもガンガン共有できちゃ

    Cache::FastMmapって初めて知りました - download_takeshi’s diary
    kwry
    kwry 2009/02/14
  • 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
  • 1