SlideShare uma empresa Scribd logo
1 de 18
Baixar para ler offline
WEBスピード向上・転送量削減する
Brotli圧縮とDrupal
2
ABOUTME
Job : 合同会社レッドボックス CEO
※取り扱いトラフィックは約50Gbps前後(2017年時点)
Name: 小川 かつひさ (KATSUHISA OGAWA)
Like : CDN・負荷分散・WEB高速化
https://www.facebook.com/ogawaka
キャッシュ屋ブログ
Past : インフラ屋さん
サーバーやスイッチを設定したり色々やってるアレ
https://blog.redbox.ne.jp
3
コンテンツ圧縮の種類
代表的な圧縮方式
Gzip(ジージップ)またはDeflate(デフレート)
その他圧縮方式
Bzip2
特徴: deflateやgzipよりも圧縮率が高いが非標準
アルゴリズム:Burrows-Wheeler transform (BWT)
Zopfli(ズォップリー)
特徴:Googleが2013年に開発したGzipより圧縮率が高い方式
Brotli (ブロトリ)
特徴: Googleが開発したアルゴリズム。deflateやgzipよりも高い圧縮率
アルゴリズム:LZ77、ハフマン符号、2nd order context modeling
コンテンツ圧縮の仕組み
4
そもそも、WEB業界での
コンテンツ圧縮とは?
5
コンテンツ圧縮の仕組み
おれのものはおれのもの
「おれのものはおれのもの、おまえのものもおれのもの」
このテキストの場合、「おれのもの」のように同じフレーズ(文字列)が
ある場合は、出現場所と文字数を置き換えることにより圧縮を実現します。
つまり同じようなフレーズが多ければ多いほど圧縮率が高い。
「おれのものは6,5、おまえ10,3も9,5」
<
圧縮
Brotliとは?
6
Brotli(ブロトリ)はGoogleがファイルサイズをさらに縮小するために
開発したオープンソースの圧縮アルゴリズム。
由来はスイスで「小さなパン」を意味する「Brotli」(ドイツ語)と
なっています。
既に「RFC 7932」の一部としてIETFによって定義されています。
7
Brotliの圧縮率とパフォーマンス
圧縮率調査1
8
Brotliの圧縮率とパフォーマンス
圧縮率調査2
gzip圧縮率9よりBrotli圧縮率5のほうがコンテンツサイズが縮小
元ファイルが大きければ大きいほどBrotliの効果が高い。
9
Brotliの圧縮率とパフォーマンス
圧縮コスト(パフォーマンス)
10
Brotliの圧縮率とパフォーマンス
Brotli圧縮を使わない手はない。
11
Brotli圧縮対応状況
クライアントサイド
HTTPS必須 IE/OPERA以外は対応
12
Brotli圧縮対応状況
サーバーサイド
・Apache
httpd 2.4.26からmod_brotliが利用可能
・Nginx
ngx_brotliを利用
・Microsoft IIS
オフィシャルでサポートはされていませんが、コミュニティモジュールを導入す
ることにより対応します。
・Node.js
こちらもIISと同様にコミュニティモジュールを導入することにより対応します。
・PHP
PHPも拡張モジュールによって、brotli圧縮に対応しています。
https://github.com/kjdev/php-ext-brotli
13
Drupalとの連携
DrupalでBrotli圧縮をおこなうには
14
Drupalとの連携
Advanced CSS/JS Aggregation
15
Drupalとの連携
Advanced CSS/JS Aggregationとは?
とにかくWEBを高速化できる要素がつまっている。
 JS/CSSのMinifyを自動で行う(OntheFlyでは無い)
 複数のCSS.JSを統合しリクエスト数を減らす
 Minifyしたコンテンツを複数のバリデータでチェック可能
 外部CSS / JSのDNSプリフェッチを使用する
 D7,D8両方とも対応
16
Drupalとの連携
Brotli圧縮の有効化
モジュールをインストールすると、
パフォーマンスのタブに設定項目が追加されている。
Brotli を有効にするには、Brotli PHP Extentionの導入が必須。
※https://github.com/kjdev/php-ext-brotli
17
弊社CDNトラフィックを調査すると、約80%がBrotliに対応し
ている。残り20%はGzip配信。
サーバーサイドの標準実装が進めば、Gzipにかわる圧縮配信の
スタンダードとなる日も近い。
OnTheFly圧縮は若干圧縮コストがかかるため、Drupalのように
予めBrotli圧縮させたファイルを用意し、圧縮したコンテンツを
配信するという方式も有効。
CDNとの相性は正規化の関係上Brotliにお対応したCDNが必須。
ま
と
め
THANK YOU!!

Mais conteúdo relacionado

Mais procurados

御池サミット20130726
御池サミット20130726御池サミット20130726
御池サミット20130726
Takeshiro Kani
 
Pro aspnetmvc3framework chap23
Pro aspnetmvc3framework chap23Pro aspnetmvc3framework chap23
Pro aspnetmvc3framework chap23
Hideki Hashizume
 

Mais procurados (20)

DOM Scripting ことはじめ
DOM Scripting ことはじめDOM Scripting ことはじめ
DOM Scripting ことはじめ
 
20200714 cogbot
20200714 cogbot20200714 cogbot
20200714 cogbot
 
2015 cas ub
2015 cas ub2015 cas ub
2015 cas ub
 
20130330 JAWS-UG広島 美人CDP
20130330 JAWS-UG広島 美人CDP20130330 JAWS-UG広島 美人CDP
20130330 JAWS-UG広島 美人CDP
 
Markdownでドキュメント作成
Markdownでドキュメント作成Markdownでドキュメント作成
Markdownでドキュメント作成
 
Markdownもはじめよう
MarkdownもはじめようMarkdownもはじめよう
Markdownもはじめよう
 
便利なHerokuと active recordの 速度改善tips
便利なHerokuと active recordの 速度改善tips便利なHerokuと active recordの 速度改善tips
便利なHerokuと active recordの 速度改善tips
 
グループディスカッションツールco-meeting @ SHAREカンファレンス vol.1
グループディスカッションツールco-meeting @ SHAREカンファレンス vol.1グループディスカッションツールco-meeting @ SHAREカンファレンス vol.1
グループディスカッションツールco-meeting @ SHAREカンファレンス vol.1
 
DebianとWordPressでハッピーになろう!
DebianとWordPressでハッピーになろう!DebianとWordPressでハッピーになろう!
DebianとWordPressでハッピーになろう!
 
X pages day発表_20141118 final
X pages day発表_20141118 finalX pages day発表_20141118 final
X pages day発表_20141118 final
 
Xml rpc を使ってブログ投稿
Xml rpc を使ってブログ投稿Xml rpc を使ってブログ投稿
Xml rpc を使ってブログ投稿
 
Windows版 ruby で Officeアプリケーションの制御
Windows版 ruby で Officeアプリケーションの制御Windows版 ruby で Officeアプリケーションの制御
Windows版 ruby で Officeアプリケーションの制御
 
第2回 Framgia × LOUPE 勉強会 「Chrome Extensionいじってみた話」
第2回 Framgia × LOUPE 勉強会 「Chrome Extensionいじってみた話」第2回 Framgia × LOUPE 勉強会 「Chrome Extensionいじってみた話」
第2回 Framgia × LOUPE 勉強会 「Chrome Extensionいじってみた話」
 
CakePHPとYii_エンジニア勉強会20130820
CakePHPとYii_エンジニア勉強会20130820CakePHPとYii_エンジニア勉強会20130820
CakePHPとYii_エンジニア勉強会20130820
 
御池サミット20130726
御池サミット20130726御池サミット20130726
御池サミット20130726
 
WordPress ドキュメンテーション作成と翻訳
WordPress ドキュメンテーション作成と翻訳WordPress ドキュメンテーション作成と翻訳
WordPress ドキュメンテーション作成と翻訳
 
クラウドことはじめ
クラウドことはじめクラウドことはじめ
クラウドことはじめ
 
XPagesDay 2013 Closing Session
XPagesDay 2013 Closing SessionXPagesDay 2013 Closing Session
XPagesDay 2013 Closing Session
 
PWAについて
PWAについてPWAについて
PWAについて
 
Pro aspnetmvc3framework chap23
Pro aspnetmvc3framework chap23Pro aspnetmvc3framework chap23
Pro aspnetmvc3framework chap23
 

Último

Último (11)

Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

brotli圧縮でスピード向上・転送量削減を実現 Drupalとの連携