>フリーウェアfreo> freoが早くなるかもしれない小技

エントリー

freoが早くなるかもしれない小技

11/17 : Live HTTP Headersについて追加しました。

各種設定を変更します。
逆に悪化する可能性があるかもしれませんので、
遅すぎwwwもうだめぽwww
っていう崖っぷちの人が神頼み的にやるおまじないです。

現状困ってない人はやらないほうがいいかも。

PHPのAPCを有効にする

PHPの高速化キャッシュモジュールAPCを
ユーザー側でコントロールできる場合は有効にする。

有効にすると高速になります。
サーバーによっては元々ONになってるのもある。
コアサーバーは初期値でONだから、特に何もする必要はない。
バリューサーバーは初期値でOFFのため、
htaccessにphp_flag apc.cache_by_default onを追加してAPCを有効に。

サーバーによってはhtaccessではなく、
コントロールパネルからON,OFF切り替えを行うこともあります。

サーバーの仕様を確認してみてください。

freoのキャッシュを有効にする

詳細は公式HPに掲載されています。

アクセス数の多い個所のキャッシュを作成するよう設定すると効果が高いと思われます。
feedなどは頻繁にアクセスされますので、
特に負荷対策が不要な人でもfeedはキャッシュするとサーバーに優しいです。

ただ、むやみやたらにキャッシュをとっても、
キャッシュの作成でサーバーへの書き込みが増えるため、かえって負荷が上がる場合があります。
何をキャッシュするのかを見極めてください。

freoのキャッシュの仕様として、
記事やコメントが投稿されるとキャッシュが全て削除されるようです。
ですので、更新やコメント数が多いとキャッシュの生存期間が短いので注意してください。
ようするに負荷が上がります。
キャッシュは更新とともに削除されるため、キャッシュする時間は多めにとっても大丈夫かも。

キャッシュ対象にもよりますが、キャッシュの分だけサーバーの容量を消費します。
負荷とともに容量のほうも確認してください。

サイトのページ速度を測定 : http://gtmetrix.com/

キャッシュオンとオフで3回ずつ計測。
ほぼ同じ時刻に測定したものです。
試行回数が少ないため正確性は難ありですが、参考にどうぞ。

キャッシュオフ 平均 : 8.38秒
cache_off_01.jpg
cache_off_02.jpg
cache_off_03.jpg

キャッシュオン 平均 : 5.16秒
cache_on_01.jpg
cache_on_02.jpg
cache_on_03.jpg

freoのキャッシュを有効化すると高速化するようです。

CloudFlare

簡単に言えばWEB魚拓のようなもの。
使い方はググればいっぱい出てくるため省略。

ブログ ←→ CloudFlare ←→ 閲覧者

閲覧者はCloudFlare(以下CF)からデータを取得し表示。
ブログへのアクセス数が少なくなることで負荷が下がる。
いいことづくめのように聞こえ、ネットの記事も称賛してるのが多い。
でも、実は結構クセがあって使いにくい。

ただ、「CFの設定次第」ではかなり高速化されます。
実際にやってみるとかなり早くなります。
「設定」によってはですが。

記事を更新してもキャッシュは消えないので(ディフォルトで4時間更新)、
更新のたびにCFへアクセスしてキャッシュのパージ(purge = 消去)が必要。
めんどくさい。
cache_purge.png

キャッシュの影響でコメントやメッセージの投稿で問題が出る場合がある。
管理画面ももれなく影響が出る。

投稿されるコメントはCFのIPになってしまい、
IPでブロックするのが困難になる。
ワードプレスには生IPが取得できるプラグインがあるそうですが、
freoにはありません。

CloudFlareの設定のみだと体感速度はそれほど上がらなかったです。
そこでやったのが、page rules。
15秒とか表示にかかってたのが、このルールを設定するとものすごい速度が上がります。
一瞬で表示されるぐらい高速になる。

ただし不具合というか不都合満載。
コメントやメッセージ投稿系がほぼ使い物にならなくなります。
キャッシュが効いて投稿できたりできなかったりいろいろ。

私のサーバーの環境が悪いのか、
データベースロックがかかりまくる。
データベースロックはCFを一時的にポーズ(Pause)すると回避できる模様。

早くなれば他を犠牲にしてもかまわないという覚悟がある人だけどうぞ。


page_rules.png

必須事項としては、管理画面をバイパスしてキャッシュさせないようにすること。
記事を更新したりしてもキャッシュの影響でわけわからなくなるので。
page_setting.png

URLパターンに管理画面のアドレスを入力します。
例)http://example.com/admin*
adminの後ろにはアスタリスクをつけてください。
これで管理画面全体が対象になります。

キャッシュをバイパスしますを選んでください。

TTLが期限切れはパソコン側のキャッシュの有効期限の指定です。
長いほどサーバーへのアクセス数が減少するため負荷は軽くなりますが、
更新されませんので不都合が発生する確率も上がります。
リロードすればいいだけだから必要以上に心配する必要はないです。

常にオンラインはそのまま。

アプリは謎。よくわからない。
たぶんCFのプラグインのことかな。オフで大丈夫だと思う。

パフォーマンスはオンに。
ロケットローダーはJavaスクリプトが動かないなど報告が上がってますので、
なんかおかしいな?と思ったら止めてみてください。

セキュリティはオンで。

これで管理画面のキャッシュ化を止めました。

次がサイト全体の設定。

URLパターンに管理画面のアドレスを入力します。
例)http://example.com/*
アスタリスクをつけてください。

カスタムキャッシュはすべてをキャッシュしますを選ぶ。
高速化には非常に重要な項目です。
全てをキャッシュするとトップページからViewからページまであらゆるキャッシュが取れますので、
サイト全域で高速化されます。
ただ、キャッシュが悪さをすることがあるので諸刃の剣ですけど。
すべてをキャッシュしますを選んだらfreoのキャッシュ機能は止めてください。

エッジキャッシュは~。CFのキャッシュ保存期間です。
期間が長いほど高速化の恩恵を受けやすいですが、更新されないという意味でもあります。
コメント投稿などがあっても更新されないってことですので。
自分以外の何かがデータを更新する環境だと、短めの設定のほうがいいかも。
キャッシュを作り直す回数が増えるから高速化の恩恵は少なくなります。

あとはお好みで。

無料プランは3ルールしか設定できません。
この微妙に使いにくいようにしてあるのがにくらしい。
既に2個使用済みで、あと1個しかルールが設定できない。
微妙に使いにくくして有料プランにどうぞみたいなうまい戦略。

page_order.png

最後に並び順。
上から優先順位が高くなってると説明があるので、
まずは管理画面をキャッシュさせないようにして、それからブログ全体をキャッシュ。
ちゃんと並んでるか確認したらサイトがどうなってるかを様子見してください。

高速化されてれば成功です。
キャッシュの影響で不具合が出る可能性があるためチェックしてくださいね。
コメント投稿とかメッセージ投稿あたりが私はひっかかりました。

CFのキャッシュが機能してるかどうかは、
FirefoxのLive HTTP Headersで確認できます。

右クリック→ページの情報を表示→ヘッダ
cf_cache_status.png

CF-Cache-StatusがHITになってればキャッシュが機能してます。

freoから検索フォームを外す

規模が大きくなると検索時間も長くなるため、
外すと負荷が下がる可能性がある。
閲覧者の検索フォームは外部サービスを使うようにする。

templates/utility.htmlに検索フォームがあります。
それを、グーグルのサイト内検索と置き換えます。

グーグルに登録されたページしか表示されないという難点はあるが、
自分のサーバーには一切負荷がかからないのは大きなメリット。

ページ移動

コメント

コメント欄への投稿方法や内容につきましては、
記事へのコメント投稿についてを参考にしてみてください

コメント欄の投稿は公開されます。
非公開を希望する内容につきましては、みさきる!管理者へ連絡をお使いください。

comments powered by Disqus

ユーティリティ

スポンサードリンク

検索

カテゴリー

新着記事

    新着コメント

    スポンサードリンク

    つぶやき

    スポンサードリンク