Your SlideShare is downloading. ×
WP Performance Optimization
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

WP Performance Optimization

2,028
views

Published on

WordPressのパフォーマンス改善について

WordPressのパフォーマンス改善について

Published in: Technology

0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,028
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
19
Comments
0
Likes
5
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. WordPressのパフォーマンス改善 ∼ホスティングの状況に応じた改善手法のアレとかコレとか∼ WordPress Performance Optimization for Beginners
  • 2. Komori, Masaaki: WordPress Performance Optimization for Beginners まず、WordPressの配信の仕組みをおさらいしておきましょう Webサーバで何が起こっているのか • MovableTypeなどと異なり、 静的なHTMLを配信する仕組みではない • ブラウザからのリクエストによって、 それに応じたテンプレート中のPHPが実行される • データを格納しているデータベースへ接続 • HTMLを生成して、Webブラウザに送り返す
  • 3. Komori, Masaaki: WordPress Performance Optimization for Beginners Apache + PHP、MySQLの関係図はこんな感じになっている その流れを図解してみると…
  • 4. Komori, Masaaki: WordPress Performance Optimization for Beginners ホスティングの環境やサイト構築の仕方次第でパフォーマンスが悪くなることも 状況次第で重くなってしまうことも・・・ • チューニングされていないホスティングだったり • ベストエフォート型で回線自体が貧弱だったり • マシンパワーがそもそも非力だったり • プラグインを大量に使ってサイト構築していたり • テンプレート設計で余計なことをしていたり とまぁ、いろんなことが絡んで重く感じてしまう
  • 5. Komori, Masaaki: WordPress Performance Optimization for Beginners オンラインサービスやWebブラウザのプラグインで自サイトの現状を把握する とりあえず、現状を把握してみよう • Pagetest(www.webpagetest.org) • Load Impact(loadimpact.com/pageanalyzer) ※同時接続数50クライアントまで負荷チェックも可能 • Firebug + YSlow!、Firebug + Page Speed • Safari、Google ChromeのWebインスペクタ
  • 6. Komori, Masaaki: WordPress Performance Optimization for Beginners バックエンドのPHPとDBの処理なのか、フロントエンドの構造なのか ボトルネックがどこなのかを判断する
  • 7. Komori, Masaaki: WordPress Performance Optimization for Beginners まずは、自分のホスティング環境がどういう状態か確認 パフォーマンスの改善に入る前に 1. システム管理まで可能なVPSやDelegated Server? 2. Webサーバのモジュールが比較的自由に利用できる? 3. 上の2つのいずれも不可能…
  • 8. Komori, Masaaki: WordPress Performance Optimization for Beginners 環境にあわせて、できる対応策を適用していく パフォーマンスを改善するには? 1. システム管理まで可能なVPSやDelegated Serverなら →バックエンドのPHPやSQLの処理速度を改善してみる 2. Webサーバのモジュールが比較的自由に利用できるなら →プラグインで静的なHTMLをキャッシュして配信する(可能ならgzip化) 3. 上の2つのいずれにも当てはまらないなら →head要素内のコンテンツを整理(JS/CSSの結合など) →プラグインによる画像の最適化 →その他のパフォーマンス最適化の手法の適用
  • 9. Komori, Masaaki: WordPress Performance Optimization for Beginners APCやeAccelerator、xCache、memcacheなどを導入してみる 1. PHPそのものの処理速度をあげる • 実行されたPHPスクリプトのデータをキャッシュさせる • 代表的なPHPアクセラレータ →APC(Alternative PHP Cache) →eAccelerator →xCache →memcache などなど ※WordPressのキャッシュプラグインとも併用可能 • インストール後、環境にあわせて設定変更
  • 10. Komori, Masaaki: WordPress Performance Optimization for Beginners mod_rewrite、mod_expire、mod_gzip(mod_deflate)が使える環境なら 2. Webサーバのモジュールが利用できる • 「WP Super Cache」や「W3 Total Cache」の導入 →mod_rewrite、mod_expire、mod_gzip(mod_deflate) ※キャッシュしたからといってすべての環境で効果があるわけではない。  HTMLの設計次第ではほとんど効果のないこともある • 可能ならテキストデータをgzipで符号化しておく →mod_gzip(mod_deflate) ※上記プラグインでも設定可能。転送データ量が約1/3∼1/2に減少 • ついでに画像やJavaScript、CSSなどに有効期限を設定 →mod_expire
  • 11. Komori, Masaaki: WordPress Performance Optimization for Beginners 書き出されるHTMLのhead要素内を最適化したり、テンプレートを改善する 3. ここまでの方法が採れない場合 • 使っているプラグインの数を減らしてみる →場合によっては、それがパフォーマンス低下の原因かも • HTMLのhead要素内を見直してみよう →JavaScriptやCSSの結合、Minify化、挿入場所の変更 →head cleanerプラグインなどの導入の検討 • サイト内で使用する画像を最適化してみよう →WP Smush.itプラグインの導入 • その他の表示パフォーマンスの最適化手法の導入 →画像の配信ホストを分割するなど
  • 12. Komori, Masaaki: WordPress Performance Optimization for Beginners なんでもかんでもプラグインで解決できるわけではなく… というわけで、まとめると • まずは、現状をしっかり把握 • 何でもできるなら、PHPの処理速度を改善してみる • モジュールが使えるなら、静的なHTMLを配信する • いずれも無理なら、HTMLの構造変更や画像最適化 できることから始めましょう
  • 13. Komori, Masaaki: WordPress Performance Optimization for Beginners 作り手の都合だけでなく、見る人に優しいサイト作りを ありがとうございました