人間とウェブの未来

「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。

ngx_mrubyがnginxのTCPロードバランシング機能に対応しました

nginxのv1.9あたりからOSS版でも使えるTCPロードバランシング機能をmrubyでプログラマブルに制御できるようにngx_mrubyでもサポートしました。

github.com

これで、HTTPやHTTP/2だけでなくTCPのロードバランシングでもmrubyによって通信をプログラマブルに制御できるようになったわけです。

nginxのTCPロードバランシング機能は、nginx内部ではstreamモジュールとして、httpモジュールとは別で実装しているため、ngx_mrubyでも一から実装し直す必要がありました。

ということで少し面倒だなぁと思っていたのですが、ちょうど、僕の最近やりたい事としてTCPのロードバランサをもう少しプログラマブルに書きたいというのがあって、色々とTCPロードバランサを探したり、既存のソフトウェアで設定を試行錯誤するよりも、自分でnginxのTCPロードバランシング機能をプログラマブルに制御できるようにしたほうが手っ取り早いし理解も深まるかと思い、楽をするために実装してみました。

続きを読む

Dockerエキスパート養成読本の献本を頂きました

f:id:matsumoto_r:20150619124158j:plain

Dockerエキスパート養成読本という素晴らしい本を縁があって @takipone さんから献本を頂きました。何が素晴らしいかというのを以下に述べていきます。

www.amazon.co.jp

続きを読む

Trusterd HTTP/2 Webサーバにリバースプロキシ機能を実装しました

タイトルの通り、trusterdにリバースプロキシ機能を実装しました。

trusterd/trusterd · GitHub

これで、フロントをHTTP/2で受けつつ、バックエンドに既存のHTTP/1.xサーバを置いてリバースプロキシすることで、HTTP/1.xのコンテンツを活用することができます。

続きを読む

楽しもうOSS開発 - mrubyで学んだ貢献の流儀と情熱

というタイトルでWEB+DB PRESS Vol.85に寄稿しました。発売日は2月24日です。Amazonでは予約もできます。

タイトル的には非常に恐縮で、僕がこんな記事を書いてしまって良いのか不安でしたが、編集者と査読者の方々の支えもあって無事書きあげる事ができました。

WEB+DB PRESS Vol.85|技術評論社

続きを読む