22日(米国時間)、Twitterの開発チームが自身のブログにおいて軽量プロキシ「Twemproxy」のオープンソース化を発表した。Twemproxyhは、memcachedプロトコル用に開発されている軽量で高速に動作するプロキシ。ライセンスには、Apache License 2.0を採用しており、Githubで公開されている。
Twitterでは数千にも及びフロントエンドのアプリケーションサーバを用意し、キャッシュサーバを割り当てていた。しかし、ユーザ数が増えることでトラフィックが増大し、アプリケーションサーバを追加しなければならず、結果的にキャッシュサーバのパフォーマンスの低下をまねいていた。そこでキャッシュの性能をあげるために、Twemproxyを開発し導入したという。
Twitterの開発者は、Twemproxyでは以下のようなことが実現できるとしている。
- 永続的なサーバー接続の維持
- 低速のキャッシュサーバでも接続数を保持
- パイプラインによるリクエストとレスポンス
- 同時に複数のサーバプールを使用
- memcachedアスキープロトコルをプロキシする
- YAMLファイルを使用して簡単にサーバプールを構成できる
- 複数のハッシュモードを使用
- モニタリングレポートを使用し可観測性を向上
Twemproxyがオープンソース化されたことで、誰でも自由に使用することができる。プログでは、Twemproxyを利用して開発に貢献することを勧めており、質問などはGithubのissuesで受け付けている。