Ruby向けWebサーバー「Puma 4.0」リリース

 Ruby向けのHTTPサーバー「Ruby」開発チームは6月26日、最新のメジャーリリース版「Puma 4.0」を公開した。

 Pumaは個人開発者のEvan Phoenix氏が開始したプロジェクト。RubyのWebインターフェイスであるRackに対応するアプリケーションのみを動かすことを想定して開発されている。Ragel拡張を活用してHTTPリクエストを処理することで、速度と並列処理を実現しているという。

 Puma 4.0は2016年2月に最初のリリースが公開されたバージョン3系に続くメジャーリリース。セキュリティ関連では、TLS 1.1/1.2を有効にしてTLS 1.0を無効にする機能が加わった。また、HTTPリクエストメッセージのボディを読む時間を測定し、Rackアプリに出す機能が加わった。タイムスタンプと組み合わせて、Pumaスレッドがアベイラブルになるまでの待ち時間を示すことができるという。クラスタモードでのworker_timeoutも修正し、レポートしないプロセスのみを終了するようになった。

 JRuby向けのIoBufferをネイティブで再実装した。JRubyの拡張をCの拡張に合わせるもので、同等の機能を提供するとしている。リアクターでselectに代わってnio4rを利用するようになった。

 このほか、9件のバグ修正が加わっている。

Puma
https://puma.io/