ブラウザなどでWeb上のページを表示させる際は、まずそのページのデータをダウンロードする必要があります。
一般的には最初にHTMLファイルを、その次にCSSファイルやJSファイル、画像ファイルなどをダウンロードしていき、それらのファイルを解析した後にブラウザ上(ディスプレイ上)にページが表示されます。
それらのファイルの中でテキストファイルに属するもの、つまり以下のような種類のファイルは、
- HTMLファイル
- CSSファイル
- JSファイル
- SVGファイル
そのサーバーが対応していればレスポンス時(ダウンロード時)にサーバー側で圧縮をすることが可能です。
このページを書いている2021年現在ではgzip形式での圧縮が一般的でしょう。
圧縮をすれば容量が軽くなるため、その分ダウンロード時間が短くなりページ表示速度が速くなります。(同じ通信速度で比較した場合)
Brotliとは?
Brotliとは圧縮アルゴリズムの名前です。
「ブロートリ」とか「ブロトリ」と読むようです。
Brotliはgzip以上の圧縮率なので、容量をさらに軽くすることができます。
各ブラウザのBrotliの対応状況
gzipであれBrotliであれ、その圧縮形式を使うためにはサーバー側がそれに対応しているだけではなく、閲覧する側のブラウザも対応している必要があります。
しかし、現在の主要なブラウザはすべてBrotliに対応しています。
Brotli Accept-Encoding/Content-Encoding | Can I use…
つまり、後は「サーバー側が対応しているかどうか」が問題になるわけですが、私が調べた限りではBrotli圧縮に対応しているレンタルサーバーは現在はまだあまり多くないようです。
このサイトで使用しているエックスサーバーもBrotli圧縮には対応していなかったので、数ヵ月~1年ほど前にエックスサーバーのお問い合わせフォームから要望として一応伝えておいたことがあります。
エックスサーバーがBrotli圧縮に対応された
上記の通り、一つの要望として伝えただけなのであまり期待もせずに数ヵ月が経過した先日、このサイトがBrotli圧縮に対応されていることにたまたま気が付いた。
このサイトのメンテナンスをしている時、レスポンスのcontent-encodingがbrになっているのに気が付いたのです。
ちなみに、gzip圧縮の場合は content-encoding: gzip と表示されます。
いつから対応されていたのか興味があり、エックスサーバーのサポートサイトを検索してみましたがBrotliに関する記述を見つけられなかったため、お問い合わせフォームから質問してみました。
その回答によると、2021年09月21日実施の以下のメンテナンスで実装されたとのことでした。
サーバーのレスポンスも遅くなっておらず、メリットのみ
gzipやBrotliのようにサーバー側で圧縮処理をする場合はその処理時間が発生するため、サーバーのレスポンスが少し遅くなる可能性があります。
圧縮によってファイルの容量が軽くなりダウンロード時間が少し短縮されるとしても、それ以上にサーバーのレスポンスが遅くなるようでは結果的に意味がありません。
しかし私が確認した範囲では、Brotli圧縮になってもサーバーのレスポンス時間はgzipの頃と比べてほとんど変わっていません。
エックスサーバーはサーバーの性能が高いので差が出ないだけで、もっと性能の低いサーバーの場合は差が出るのかもしれません。
つまり私のような利用者にとってはメリットのみ存在し、デメリットはないと言えます。
だからこそデフォルトでBrotli圧縮が有効になっているのだと思います。
追求心があるかどうかがWebの世界では重要なのです
速度に対してのこのような飽くなき追求心があるのがエックスサーバーの大きな魅力の一つだと思います。
このような追求心がある以上は、今後Webの技術がどのように変化したとしてもエックスサーバーは他のレンタルサーバーよりも速いサーバーである続けることが予測されます。
Webの世界は技術の進化が速いので数年経っただけで新しい技術が登場し、そちらを使った方が優位になる。ということが普通にありえます。
そのような世界ですから、上記のような追求心があるかどうかが重要なのです。
追求心があれば、新しい技術をその都度取り入れていくことができるからです。
自分で数年間使っているからわかりますが、追求心だけでなくとても良心的で良いレンタルサーバー会社だと感じます。
次は1~2年後あたりの早い段階でhttp/3に対応してくれることを期待しています。
エックスサーバー公式サイトはこちら
余談ですが、このサイトがどこのサーバーを使っているかを確認したい場合はネームサーバーを調べる手もありますが、SEOチェキのようなサイトで調べても確認することができます。