RubyKaigi2010でトークしてきました - The MessagePack Project

つくばで開かれたRubyKaigi2010で、多言語間通信ライブラリ MessagePack についてLTしてきました。 音声付きの動画をニコニコ動画で見られます(スバラシイ!)。ぴったり5分に収まりました^^; 発表資料(PDF) 発表資料(クリックで進む動画) Twitterを見…

WebSocketでブラウザにプッシュ配信する - MessagePack-RPC+Rev-WebSocket

先日、WebSocketのサーバライブラリ Rev-WebSocket をリリースしました。 前回のエントリではブラウザ同士で通信するチャットアプリケーションを紹介しましたが、実際にはTwitterクローラやWebアプリケーションなど、別のプログラムと連携してブラウザにプッ…

WebSocketサーバライブラリ rev-websocket リリース

いま WebSocket がにわかに注目を集めているようです。 ブラウザとサーバの間でリアルタイムな双方向通信を実現する機能で、HTML5に追加された(される予定の)新しい仕様です。 このWebSocketを使うには、ブラウザ側のJavaScriptの記述だけでなく、サーバ側…

『Amebaなう』リアルタイム検索機能に Apache Solr と MessagePack を採用

ミニブログサービス「Amebaなう」に検索機能を追加 Apache Solrのカスタマイズにより検索パフォーマンスが大幅向上検索機能は、当社の研究開発組織「インキュベーションラボラトリー」が開発し、Apache Solrをベースに、検索インデックス作成アルゴリズムの…

進化するMessagePackプロジェクト - Webサイトリニューアル

MessagePack Project のWebサイトをリニューアルしました! 新しいURLは、http://msgpack.org/ です。 シンプルなイメージから若干趣を変え、完成度が高くてリッチな印象を重視しました ;-) 文章ではシリアライズの速度に加えて、RPCの意欲的な設計を強調し…

シリコンバレーにいます

6月5日から6月27日までの約3週間の間、サンフランシスコ・マウンテンビューの周辺に滞在しています。 実は日本国外に脱出したのは今回が初めてで、飛行機に乗る段階から驚きの連続です^^; 滞在先のホテルから撮影した風景。眼前にはサンフランシスコの町並み…

kumofsのメーリングリストができました

できました。興味のある方はぜひご参加ください^^; kumofs-jaに参加 メール: このグループにアクセス kumofsのウェブサイトも更新しています。管理とチューニングの項目を追加しました。 The Kumofs Project 英語版 英語のメーリングリストもあります。お気…

kumofs-0.4.0リリース - CAS操作をサポート

新たにCAS(Compare-And-Swap)をサポートした、kumofs-0.4.0をリリースしました。 memcachedのテキストプロトコルで、getsコマンドとcasコマンドを新たに使うことができます。 後方互換性は保たれています*1。新機能を利用するには、kumo-gatewayとkumo-ser…

The Kumofs Project

分散key-valueストア Kumofs のWebサイトをオープンしました! The Kumofs Project Webサイトには、LinkedIn で開発された分散Key-valueストアである Voldemort との速度比較を掲載しています。kumofsはVoldemortと比べて、倍以上の読み込み性能を、半分以下…

kumofs-0.3.6リリース - kumo-gatewayバグフィックス

kumofs-0.3.6をリリースしました。 kumo-gatewayのバグフィックスです。 一部のmemcachedクライアントライブラリでkumo-gatweayにアクセスすると、kumo-gatewayが落ちる可能性があったのを修正しました。

並列メッセージングフレームワーク「MessagePack-RPC for C++」リリース

分散KVS kumofs のコードは、全体で約2万行です。 そのうち、ネットワークI/Oやプロトコルに関するコードは約1万行で、全体の約半分を占めています。 並列イベント駆動I/Oフレームワーク「mpio」リリース ネットワークアプリケーションを実装する上で、もっ…

ニコニコ動画、分散Key-valueストア「kumofs」を導入

つい先日、ニコニコ動画モバイルの一部でkumofsを導入した というお話を伺いました。 まだまだ利用は一部でしか始まっていないようですが、これからデータを取りながら運用実績を作っていきたいとのことでした。 kumofsは、バージョン0.3.3でflagsの保存に対…

kumofs-0.3.5リリース - expire対応

分散Key-Valueストア kumofs のバージョン0.3.5をリリースしました。 今回のアップデートで、expiration timeに対応しました。 kumofs-0.3.5.tar.gz kumo-gateway に -E オプションを付加すると、memcachedのテキストプロトコルでexpiration timeを指定する…

MessagePack for C++ 新機能追加 - 0.5.0リリース

MessagePack for C++のバージョン0.5.0をリリースしました。 静的型のオブジェクトから msgpack::object を作成できるようになりました MSGPACK_DEFINEマクロが定義されたクラスは、msgpack::object に変換できます デシリアライザに新しいAPIを追加しました…

mp::syncとMP_UTILIZE

並列イベント駆動I/Oフレームワーク mpio のバージョン0.3.3をリリースしました。 mp::wavy::loopクラスに flush() 関数を追加 mp::pthread_scoped_{,rd,wr}lockクラスに owns() 関数を追加 mp/wavy.hでstdint.hをinclude Downloads mpioライブラリには、並…

hbstudy#10「ずばり動く!kumofs と ずばり動かないケース」

ずばり動く!kumofs と ずばり動かないケース と題して、hbstudy#10 で発表してきました。 序盤の趣旨は丸レク2010と共通しながらも、別の側面とストーリーから紹介してみました。 また今回は、列指向DBなどの他の分散データストアとの違いについても紹介し…

丸レク2010「分散Key-valueストアkumofsの思想と設計」

分散Key-valueストアkumofsの思想と設計 と題して、丸レクセミナー2010で発表してきました。 kumofs を使いたくなるユースケースの紹介を中心に、kumofs のメリットを紹介しています。 会場は楽天タワーで、何やらスゴイ数の方に聞いていただけたようです。…

kumofs-0.3.4リリース

kumofs-0.3.4をリリースしました。 一部のmemcachedクライアント(具体的に言えばmemcached client for java)でkumofsを利用できなかったところが、利用できるようになりました。 今回のアップデートではid:terurouさんにご協力いただきました。ありがとう…

kumofsでflagを保存できるようになりました

kumofs-0.3.3をリリースしました。 memcachedのテキストプロトコルでflagを保存できるようになりました。flagを保存するには、kumo-gatewayに-Fオプションを付加してください。 以前は memcached client for java や spymemcached などの一部のmemcachedクラ…

並列イベント駆動I/Oフレームワーク「mpio」リリース

分散KVS kumofs のコードは、全体で約2万行です 22,030行。2010-04-12現在">*1。 そのうち、ネットワークI/Oやプロトコルに関するコードは約1万行 9,931行。">*2で、全体の約半分を占めています。 ロジックは残りの半分*3だけで実装されています。 この実例…

MessagePack-RPCのプロトコル仕様(ドラフト)と実装例

以前に書いた MessagePack RPC プロトコル は少し古くなってしまったので、ここでまとめ直しておこうと思います。 MessagePack-RPCのプロトコルは、非同期型の呼び出しができる点(非同期プロトコル)が大きな特徴となっています。複数のサーバが相互に通信…

コンパイル済みのgemパッケージを作るRubyGemsプラグイン

拡張ライブラリを含んだgemパッケージから、コンパイル済みのバイナリを含んだgemパッケージを作るツールを作りました。 gem-compile@github Windows向けにコンパイル済みの拡張ライブラリを配布したいときに便利です。 コンパイラが入っていない環境に拡張…

学士(情報工学)と筑波大学 学長表彰をいただきました

このたび、筑波大学第三学群情報学類を卒業し、学士(情報工学)を取得致しました。また、光栄にも学長表彰の栄誉に浴することとなりました。体育専門学群を有する筑波大学の学長表彰は、日本を代表するオリンピック選手も歴代受賞されてきた賞であって、そ…

Introducing the MessagePack

高速なシリアライズライブラリ MessagePack の新しいWebサイトをオープンしました! The MessagePack Project Ruby Inside でも取り上げられたようです: MessagePack: Efficient, Cross Language Binary Object Serialization 昨今、効率を重視したシリアラ…

kumofs-0.3.2 をリリースしました

kumofs-0.3.2 をリリースしました。 更新内容は kumo-gateway の機能追加と、./configure スクリプトの修正です。kumo-server や kumo-manager に変更はありません。 kumofs@github Downloads kumo-gatewayの機能追加 memcachedプロトコルで "version" コマ…

圧縮転送 - MessagePack-RPC for Ruby 0.3.0

高速な非同期メッセージングライブラリ MessagePack-RPC for Ruby をアップデートしました。互換性はだいたい維持されています。 gem install msgpack-rpc 今回の目玉は、圧縮転送のサポートです。メッセージをdeflate(zlib)を使って圧縮します。 使い方 …

MessagePack for C/C++/Ruby アップデート

MessagePackのC,C++,Ruby版をバージョンアップしました。C/C++版は0.4.2、Ruby版は0.3.3です。 http://msgpack.sourceforge.jp/ http://rubygems.org/gems/msgpack 主に strict-aliasing rule (goo)に関する問題を修正しました。互換性はAPI・ABI両方で維持…

第101回カーネル読書会

先日楽天タワーで開催された第101回カーネル読書会で、分散KVS kumofs の設計と実装に関して発表しました。 少々準備不足で十分な発表ができたか不安ではありますが、懇親会で大いに議論が盛り上がったのは良かったです。 そんなわけで、発表資料を公開しま…

モダンネットワークプログラミング入門 WEB+DB PRESS vol.55

先日も少し書きましたが、WEB+DB PRESS vol.55 で特集記事を執筆させていただきました。本日発売です。タイトルは、モダンネットワークプログラミング入門です。 マルチコアCPUから最高の性能を引き出す 本特集では,マルチコアCPUの性能を存分に引き出し,…

kumofsから学ぶNot only SQLの技術

NoSQLを知る〜kumofsから学ぶNot only SQLの技術 と題して、Developers Summit 2010で発表しました。 twitterの#devsumi2010 kumofsを見る限りでは大変ご好評をいただいたようで、ひとまずほっとしています。 プレゼンテーションの資料を公開しました。内容…