AnyEventでJSONを読み書きするサーバをMessagePackを読み書きするサーバに書き換える

JSONを読み書きするサーバを作ってたんだけど、転送量を減らしたかったのでMessagePackを読み書きするように仕様を変更した。

use AnyEvent::MessagePackするとAE::Handleのpush_readとpush_writeにmsgpackが生えるので、ほぼ直しなしで書き換えれる。コードも読みやすいので何やってるかもわかりやすいので良いと思います。

use AnyEvent::MessagePack;

...

$handle->push_read(
    msgpack => sub {
        ...
    }
);

$handle->push_write(
    msgpack => [1,2,3]
);

みたいなかんじ