Ruby on Rails 5.2正式版発表。Active Storageによるクラウドストレージ対応、Redisでのキャッシュ対応など
Ruby on Rails 5.2のファイナル版が発表されました。来週の火曜日からは米国ピッツバーグで「Rails Conf 2018」が開催予定で、それに間に合わせたことになります。
Rails 5.2のおもな新機能は、Active Storageによるクラウドストレージ対応、キャッシュストアへのRedis対応、HTTP/2 Early Hints対応、DSLによるContent Security Policyの設定などです。
Rails 5.2のおもな機能
Rails 5.2の主な機能をそれぞれ簡単に紹介しましょう。
Active Storage
Active Storageは、Amazon S3やGoogle Cloud Storage、Microsoft Azure Storageのようなクラウドドストレージに対してファイルをアップロードし、それらのファイルのActive Recoredオブジェクトへの添付を容易にする機能です。
また、ミラーリング機能によって複数のクラウドストレージのあいだでファイルを同期することもできます。これによって高い冗長性などを実現可能です。
Redis Cache Store
Rails 5.2ではRedis Cashe Storeをビルトインした状態で提供されるため、Redisクライアントを追加するだけでRedisをキャッシュとして使えるようになります。
HTTP/2 Early Hints
奥一穂氏によって提案されたHTTPの新しいステータスコード「103 Early Hints」は、おおまかにいえばWebブラウザとWebサーバ間におけるHTTP通信の非同期性を高め、より高速にデータを転送するための仕様です。Rails 5.2では、このHTTPステータスに対応しました。
Rails 5.2のファイナル版を発表したブログ「Rails 5.2.0 FINAL: Active Storage, Redis Cache Store, HTTP/2 Early Hints, CSP, Credentials」で、この有効性が次のように説明されてます。
This means we can automatically instruct the web server to send required style sheet and JavaScript assets early. Which means faster full page delivery, as who wouldn’t want that?
これによって自動的にWebサーバに対してスタイルシートとJavaScriptを早期に送信するよう指示できます。つまり、より高速にページ全体が提供されるのです。これを望まない人などいるでしょうか?
Content Security Policy
Content Security Policyは、Webサイトの管理者がユーザーエージェント(Webブラウザ)に対してどのページからならリソースをダウンロードして良いかを設定することで、セキュリティを管理するHTTPの仕様です。これによってクロスサイトスクリプティング(XSS)といった脆弱性からWebサイトを守ることができます。
Rails 5.2では、このContent Security PolicyをDSLで設定できるようになりました。
関連記事
- レイテンシに負けないプロトコルとして登場したHTTP/2~奥一穂氏による「HTTPとサーバ技術の最新動向」(前編)。Developers Summit 2016
- リクエストを待たずに送信を開始する「サーバプッシュ」~奥一穂氏による「HTTPとサーバ技術の最新動向」(中編)。Developers Summit 2016
- HTTPS化もHTTP/2にすれば負荷を下げられる~奥一穂氏による「HTTPとサーバ技術の最新動向」(後編)。Developers Summit 2016
カテゴリ 開発ツール / 言語 / プログラミング
タグ Ruby
あわせてお読みください
- HTTPS化もHTTP/2にすれば負荷を下げられる~奥一穂氏による「HTTPとサーバ技術の最新動向」(後編)。Developers Summit 2016
- リクエストを待たずに送信を開始する「サーバプッシュ」~奥一穂氏による「HTTPとサーバ技術の最新動向」(中編)。Developers Summit 2016
- レイテンシに負けないプロトコルとして登場したHTTP/2~奥一穂氏による「HTTPとサーバ技術の最新動向」(前編)。Developers Summit 2016
- GoogleとRed Hat、Google Cloud Platformで分散ストレージ「Red Hat Gluster Storage」の正式サポートを発表。クラウド上にNFSサーバを展開可能
- [速報]IBMとアップル、プログラミング言語「Swift」をクラウド対応に。Bluemix上にSwiftランタイム、Webフレームワーク「Kitura」などを提供
AWS、クラウドでトレーニングした機械学習モデルをエッジデバイスで実行する「AWS Greengrass ML Inference」発表