MediaWikiのパフォーマンス改善
スポンサーリンク
このドキュメントの内容は、以下の通りです。
はじめに
レンタルサーバが遅いのかと思って、変更しようかと考えたのですが、 MediaWiki が遅いのではないか、と思って、調べてみました。その結果、Wikiの設定を変更して、少しだけマシになりました、という話です。
Chromeの開発ツールで、スピードをみていると
- Waiting(TTFB)
- Content Download
TTFBとは
TTFBとは、Time To First Byte の略です。最初の1バイトが到着するまでの時間です。サーバがリクエストを受け取り、データを返し始めるまでの時間です。
ヤフーやグーグルは?
私のサイトでは、 TTFB と Content Download が両方とも 500ms でした。
ヤフーやグーグルがMediaWikiを使っているわけではありませんが、スピードを調べてみました。ヤフーのトップページだと 100ms と 214ms ぐらいでした。コンテンツの量が違うので、比較しても仕方がないですが、グーグルのトップページは、 54ms と 0.74ms と超絶に早かったです。
私のWiki | ヤフートップ | グーグル | |
TTFB | 500ms | 100ms | 54ms |
Content Download | 500ms | 214 ms | 0.74ms |
どうやってMediaWiki を速くするか
TTFB が長いということは、サーバサイドで処理している時間が長い、ということになります。処理時間を減らすには、
- キャッシュ
- サーバを速くする
- コードを減らす
- コードを最適化する
簡単にできそうなのは、キャッシュですが、レンタルサーバということもあり、自由度は高くありません。
どうやってMediaWiki を速くしたか
まず、答えからいうと MediaWiki が持っているキャッシュ機能を有効にしました。
ファイルシステムにファイルを作って、そこにキャッシュする「ファイルキャッシュ」です。
利用するのは簡単で、設定ファイルに2行追加するだけです。副作用でカウンタのアップデートされなくなりそうですけど。
LocalSettings.php に以下の設定を追加するだけです。
$wgUseFileCache = true; $wgFileCacheDirectory = '/tmp'
どのぐらい速くなったのか
ページによって異なると思いますが、だいたいこんな感じになりました。
キャッシュなし | キャッシュあり | |
TTFB | 500ms | 317ms |
Content Download | 500ms | 116ms |
まとめ
- MediaWiki のキャッシュを使えば、速くなる
- 設定を2行追加するだけで速くなる
スポンサーリンク
スポンサーリンク
いつもシェア、ありがとうございます!
もっと情報を探しませんか?
関連記事
最近の記事
- パナソニック ジェットウォッシャードルツ EW-DJ61-Wのホースの修理
- LinuxセキュリティモジュールIntegrity Policy Enforcement
- アマゾンのEcho Show 5を買ったのでレビューします
- アマゾンのサイバーマンデーはAlexa Echo Show 5が安い
- Android スマートフォン OnePlus 7T と OnePlus 7の違い
- Android スマートフォン OnePlus 7 をAndroid10にアップデートしてみた
- クレジットカードのバーチャルカードの比較のまとめ
- 活動量計 Xiaomi Mi Band 4を買ってみたのでレビュー
- Android スマートフォン OnePlus 7 のレビュー
- AliExpressでスマートフォンを買い物してみた
- パソコンのホコリ対策 レンジフードフィルターと養生テープ
- 80PLUS GOLDのPC電源ユニットAntec NeoEco 750 Goldのレビュー
- イギリスの付加価値税 VAT は払い戻しを受けられる
- イギリスのロンドンでスーツケースなど荷物を預けられる場所は
- イギリスのロンドンで地下鉄やバスに乗るならオイスターカードを使おう
- イギリスのヒースロー空港からロンドン市内への行き方
- 航空便でほかの航空会社に乗り継ぎがある場合のオンラインチェックイン
- SFC会員がANA便ではなくベトナム航空のコードシェアを試して解ったこと
- ベトナムの入国審査でeチケットの掲示が必要だった話
- シアトルの交通ICカードはオルカカード(Orca)です
人気のページ
- Windows7 IME 辞書ツールで単語の登録に失敗しました
- C言語 popen()でコマンドを実行して出力を読み込む
- Windows7で休止状態にする方法
- CentOS MySQLの起動、停止、再起動
- loggerコマンドでsyslogにエラーを出力する方法
- パソコンパーツの買取をしてくれる店のまとめ
- Java Mapの使い方 get(),put(),remove(),size(),clear()
- 楽天のRポイントカードを作ってみた
- iPhone 5 から iPhone 6 に乗り換えたのでレビュー
- netstatコマンドのステータスの意味
スポンサーリンク
過去ログ
2020 : 01 02 03 04 05 06 07 08 09 10 11 122019 : 01 02 03 04 05 06 07 08 09 10 11 12
2018 : 01 02 03 04 05 06 07 08 09 10 11 12
2017 : 01 02 03 04 05 06 07 08 09 10 11 12
2016 : 01 02 03 04 05 06 07 08 09 10 11 12
2015 : 01 02 03 04 05 06 07 08 09 10 11 12
2014 : 01 02 03 04 05 06 07 08 09 10 11 12
2013 : 01 02 03 04 05 06 07 08 09 10 11 12
2012 : 01 02 03 04 05 06 07 08 09 10 11 12
2011 : 01 02 03 04 05 06 07 08 09 10 11 12
2010 : 01 02 03 04 05 06 07 08 09 10 11 12
2009 : 01 02 03 04 05 06 07 08 09 10 11 12
2008 : 01 02 03 04 05 06 07 08 09 10 11 12
2007 : 01 02 03 04 05 06 07 08 09 10 11 12
2006 : 01 02 03 04 05 06 07 08 09 10 11 12
2005 : 01 02 03 04 05 06 07 08 09 10 11 12
2004 : 01 02 03 04 05 06 07 08 09 10 11 12
2003 : 01 02 03 04 05 06 07 08 09 10 11 12