You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
つくばで開かれたRubyKaigi2010で、多言語間通信ライブラリ MessagePack についてLTしてきました。 音声付きの動画をニコニコ動画で見られます(スバラシイ!)。ぴったり5分に収まりました^^; 発表資料(PDF) 発表資料(クリックで進む動画) Twitterを見る限りでは評判も良かったようで、ひとまず安心しています。 説明が足りなかった部分もあるので、ここで補足しておきます。 JSONと比べてどれくらい小さくなるの? ある日のTwitterのpublic_timelineを使って比較してみたところ、JSONでは31KBだったものが、MessagePackでシリアライズし直すと25KBになり、約19%削減されました。 ただミニブログサービス「Amebaなう」に…等々の話にもあるように、「MessagePackを使えば必ず大幅にサイズ圧縮に成功する」という訳ではないです。
先日、WebSocketのサーバライブラリ Rev-WebSocket をリリースしました。 前回のエントリではブラウザ同士で通信するチャットアプリケーションを紹介しましたが、実際にはTwitterクローラやWebアプリケーションなど、別のプログラムと連携してブラウザにプッシュ配信したくなると思います。 つまり↓このように、任意のプログラムからWebSocketサーバを経由して、ブラウザにデータをプッシュ配信します: プッシュ配信したいアプリケーションと WebSocket サーバの間は MessagePack-RPC で繋ぎます。 Rev-WebSocket と MessagePack-RPC は相性が良く、簡単に統合することができます*1。 アプリケーションから WebSocket サーバを経由してブラウザにデータを配信するコードは、↓このようになります。 require 'rubyg
最近Railsがガンガン出力するproduction.logを解析してどのアクションがリクエスト多いのか、DBがボトルネックになってるアクションはないか、などを調べているんですが、production.logがどんどん肥大化して、解析ツールの開発イテレーションを回す際の効率が悪くなってきました。 また似たようなツールをやたらめったらコピペで作ってきたため、開発効率も悪くなってきたので、ここでAPIを整理しつつ、あわよくばログをなめる部分を高速化できないものかと考えました。 シンプルに正規表現をつかって変化する箇所を切り出していたのですが、これではかなり重いのは自明ですし、がんばって文字列をパースするパーサを作ってもrubyではあまりスピードは出なそう、でもrubyで書きたいし.... ということで、一度パースしたデータを読込みに効率よさそうな形式に変換することで、次以降の解析を高速化しよう
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く