こんにちは。
以前見かけた Fullstaq Ruby を試してみようと思います。
Fullstaq Ruby
触れ込みについて
公式サイト の触れ込みでは
Ruby, optimized for production
A new Ruby distribution, with the Ruby you know and love, but better.
本番環境向けに調整されたより優れたRubyとのことです。
Less memory — save 30-50%
メモリ消費を3~5割抑え
Faster
高速で
More secure
セキュアで
Fully open source, based on MRI
MRIベースの完全なオープンソース
とのこと。
作者について
サイトをみていると、創設者は Hongli Lai と Fullstaq という会社のようです。
Hongli Lai はそこに記載があるように、 Passenger や Ruby Enterprise Edition の作者だそうですね。
最近の方は Ruby Enterprise Edition をご存じないかもしれません。
Ruby 1.8系の時代にメモリ使用率が激減することで、よく本番環境で用いられていたRuby処理系でした。
Rubyおじさんとしては「まじか、使えるんじゃないか」という気持ちにもなってきますね。
しくみ
週刊Railsウォッチで取り上げられていたのでそちらをお読みください。
週刊Railsウォッチ(20190821-2/2後編)11のgemにバックドア、ruby-jp Slackがとてもアツい、Fullstaq Rubyでチューンアップ、HTTPサービス監視chaoほか
導入
Server Edition 、Container Edition 、Heroku Edition と提供する予定のようですが、2019年12月3日現在は Server Edition のみのようです。
GET STARTED - Installation に RHEL/CentOS と Debian/Ubuntu のパッケージマネージャを使った方法が載っているので、そちらを読んで導入してみます。
今自由にできる環境がDocker環境しかなかったので、既存のDockerfileを手直しして入れてみました。
2019年12月3日現在、最新の Debian 10 buster 向けのパッケージは用意されていないようだったので、Debian 9 stretch をベースに使いました。
FROM buildpack-deps:stretch
ENV RUBY_VERSION 2.6.5
# Install dependencies
RUN apt-get update -qq \
&& apt-get install -y gnupg apt-transport-https ca-certificates curl
RUN echo 'deb https://apt.fullstaqruby.org debian-9 main' > /etc/apt/sources.list.d/fullstaq-ruby.list \
&& curl -SLfO https://raw.githubusercontent.com/fullstaq-labs/fullstaq-ruby-server-edition/master/fullstaq-ruby.asc \
&& apt-key add fullstaq-ruby.asc \
&& apt-get update -qq \
&& apt-get install -y fullstaq-ruby-${RUBY_VERSION} \
&& apt-get clean
ENV PATH $PATH:/usr/lib/fullstaq-ruby/versions/${RUBY_VERSION}/bin
# (省略)
結果
まだデータ不足。
1、2週様子を見て載せます。
動作には問題なく、テストはすべてパスし、エラートラッカーには特に情報は上がってきていません。