2008-07-21から1日間の記事一覧

CHIのMultilevel driverで多段cache

MemoryになければMemcachedからcache取得、のようなコードを以下のように書けるというのがCHIの肝で、ここがData::ObjectDriverととても似ているんですね。subcachesのところに、driverを複数書くと、書いた順にcacheを探しにいきます。 #!/usr/bin/env perl…

Test::Classを使ったCPANモジュール

CHIはTest::Class使ってるなぁ。xUnit styleで書かれていて、個人的にはこのスタイルの方が好きかなぁ。テストケース毎の共通化もベースクラスでできるし。ただ、テストケースをlib/CHI/t/libってとこに置いてるけれど、tディレクトリの下に置いたほうが個人…

Coroでmuxtapeの情報取得をparalell化

dmakiさんの記事を参考に、つい先日書いたmuxtapeの情報取得スクリプトをCoro化してみました。 http://mt.endeworks.jp/d-6/2008/04/coroflickr.htmlCoroは、Javaだとconcurrent.utilに相当するものですね。お手軽に処理をパラレル化できるので、色々と使え…

開発時のvimの使い方

今までは、 必要なファイルを必要なときに開く Ctrl-zでsusppendして、なんかしてfgで戻る 最近は、 vim **/*.pm で全部バッファに開く fuzzyfinderでバッファ移動 + autocomplpopでbufferから補完 screenで移動して、なんかして、vim用screenのwindowに移動…

Devel::Coverでカバレッジテスト

機能テストで機能仕様を満たしているかを確認するのにテストケースを書く場合、それらのテストをしていてもカバレッジが100%になっていなければ、何らかの漏れがあるか、使われていない古いコードが残っているかの可能性が高くなります。どちらのケースも後…

S3問題のあれ

CHI::Driver::S3を作ればいいんじゃないかと思った。とはいっても、容量気にする必要がある場合には、画像とかそこそこでかいデータをキャッシングするには、分散ファイルシステムが必要になっちゃうなぁ。(Local?)->分散ファイルシステム->S3そこまでいっち…

CHIのDriverでAmazon S3にキャッシュ - CHI::Driver::S3

割とさくっといけそうだったので、S3用のDriverを書いてみました。 http://dann.g.hatena.ne.jp/dann/20080721/p6expire周りの実装がまるで抜けてるのとエラー処理がないのでリリースするにはまだ早いですが、set, get, get_multi系はとりあえず動作します。…

クラウドコンピューティングで進む分業化

EC2とS3の値段がさらに下がると、少し違った未来が見えるかもしれない。クラウドの世界は、今はAmazon、Google, Salesforceの3強だけれど、それにしたって安い。これが5年もたてばもっと下がる可能性は高い。現在のWebサービスの難しさは、アプリケーション…

サービス開発者の中の分業

サービス開発者というのは、もう少し細分化されるようになって、一つはデータに対して意味付けを与える開発者と、それを利用してWebサービスを作る開発者。どちらの層にも重要になってくるのは、クラウドの層に対する知識があるかないかということ。特にデー…

次は、DOD or Moco ?

CatalystとMooseは大体わからないことがあっても、ある程度は中まで手をいれられるようになったかなぁ。使ってるだけなのは、DBIC。ORマッパは、DBIC、DOD、Mocoなんだけれど、DBICは頑張ってよむのはしんどいなぁというところで、DODかMocoに突っ込んで何か…

Cloud Computingでの多段キャッシュ

ふと思ったのだけれど、 http://eucalyptus.cs.ucsb.edu/ はS3互換のAPIを出してるわけで、S3=>Eucalyptus とか多段でクラウドを使うってすればいんじゃないかと思った。信頼性/性能の高い順にクラウドが多段で並べて使うというイメージ。APIはデファクトを…

PerlとJavaでのテストの違い

結論からいうと大きな差はないのですが、少しだけ違いがあります。データドリブンのテストとしてのTest::Baseの存在とxUnit styleのテストが主流ではない事、この2点です。 Test::Base Javaの世界でのテストと似たものがないのは、Test::BaseとTest::Pod::Co…