タグ

ブックマーク / blog.liris.org (6)

  • Emerge Technology: はじめてのZeroMQ その1

    生まれ変わった「Days of Liris」。プログラミングのこと、Pythonのこと、気になったソフトウェアのこと、身の回りのこと、いろんなこと。など MQ関係は「遅い!機能過多!」というイメージがあって敬遠していました。最近、もう一度調べ直しています。その中でZeroMQと言う変なのがいるらしい、と言うことで、しばらくはZeroMQ関係のお話です。ざっとドキュメントを読んだ感想は、MQと言うより、ネットワークをもう少し抽象化して、ユニキャスト、ブロードキャストを簡易に使えるようにしている、と言うものです。そのため、APIもとても薄くローレベルなものです。僕はこれくらいのものが好きだったりします。 トップページには次のように特徴を書いています。 並列フレームワークとして振る舞うソケットライブラリ プロセス間, IPC, TCP, マルチキャストを横断的にメッセージ伝搬 fanout, p

  • Emerge Technology: 初めてのRabbitMQその1

    生まれ変わった「Days of Liris」。プログラミングのこと、Pythonのこと、気になったソフトウェアのこと、身の回りのこと、いろんなこと。など メッセージングキューがなぜか続きます。今回はSpringSourceに捨てられたプロダクト、RabbitMQです。昨日のZeroMQとは違うんです。ちゃんとした(?)AMQPなんです。AMQPの標準に準拠した高可用性、高スケーラビリティ、ポータブルなメッセージングシステムらしいです。ただ、このうたい文句の検証は大変なのでやりませんん。小人さん、お願いします。 僕の手元にはMacしかないので、Mac上で遊んでみます。まずは、RabbitMQのインストールはhomebrewから(MacPortsやめました)。brew install rabbitmqです。インストールが終わるまではお茶を飲みながらゆっくり待ちましょう。それから、Python

    bluele
    bluele 2012/02/04
  • Emerge Technology: Pythonで3分MongoDB

    生まれ変わった「Days of Liris」。プログラミングのこと、Pythonのこと、気になったソフトウェアのこと、身の回りのこと、いろんなこと。など PythonでMongoDBで遊びます。shardingとかGridFSとか、MongoDB自体のお話はまた、きっと後日。 まずは、mongodbのインストール。 $ sudo port mongodb MongoDBを動かします。Cassandraと違って一般ユーザで。 $ mongod  --dbpath data では、PythonでMongoDBを遊ぶためにpymongoをインストール。 $ pip install pymongo さて、準備ができたので早速遊びましょう。MongoDBをインストールしたらmongoというインターラクティブシェルも一緒にインストールされます。これを使って、インターラクティブにmongodbを操作でき

  • Emerge Technology: urllib2でkeep-alive

  • Emerge Technology: geventをインストール

    Twisted教は面白いのですが、疲れるのも事実です。そこで、eventletに乗り換えようとしたら、jbkingより「ナウでヤングな若者はgeventだ(意訳)」と教えてもらって、とりあえず、入門することにしました。 eventletとgeventの違いを読んでいると、源流はeventlet見たいですが、eventletの気にくわないところとバグを直したみたいです。僕はeventletをかなーり前にテスト的なコードしか書いていないので、何が困っているのか分かりませんが、守るものもないので、とりあず、geventでやることにします。 依存しているライブラリはgreenletとlibeventです。greenletはeasy_installでいれときます。ドキュメントをちゃんと読まずにインストールしたので、libeventが入っていませんでした。当は、入っているつもりだったんです。最新のl

  • Emerge Technology: [翻訳]Hadoopで動くPythonのMapReduceプログラムを書く

    HadoopフレームワークはJavaで書かれていますが、Hadoop上で動くプログラムはJavaで記述する必要はありません。PythonC++(バージョン0.14.1以降)のような他の言語で開発することができます。しかし、Hadoopのホームページのドキュメントや最も重要なPythonのサンプルコードを読むと、PythonコードをJythonを使ってJavaのjarファイルに変換しないといけないように考えてしまいます。明らかに、この方法はきわめて不便で、もし、Jythonが提供していないPythonの機能を使っている場合はともて問題です。Jythonのアプローチのもう一つの問題は、Hadoopと連携させてPythonプログラムを書くオーバーヘットです。<HADOOP_INSTALL>/src/examples/python/WordCount.pyを見れば、言っていることがわかると思いま

    Emerge Technology: [翻訳]Hadoopで動くPythonのMapReduceプログラムを書く
  • 1