IT・AI・DX

PageSpeed 99点!低スペック環境で挑んだWordPress高速化の第一歩

fast wordpress website on low spec server IT・AI・DX
この記事は約6分で読めます。

本サイトの成り立ち

9月15日にAlibaba Cloud (シンガポールリージョン)の ecs.t5-lc1m1.small インスタンスを申し込み、OSにUbuntu24.04 LTSを採用。
最新版の PHP-FPM・MySQL・Nginx をインストールしたうえで、WordPress 6.8.3 により本ブログサイトを構築した。brisklore.comとのドメインも申請して付与した。

このインスタンスは 1年間の無料試用版 で、1vCPU/1GiBメモリ/40GiB(2120 IOPS)ディスク という最小構成だったが、Ubuntu本体およびAliyun監視関連の不要な機能・パッケージを停止・削除。さらに、物理メモリを補うための Swap領域 を設定し、PHP・MySQL・Nginx ・journaldのメモリ使用量を制限・チューニングした結果、ひとまず 通常運用に耐えうる環境 に仕上がった。

SSL証明書(HTTPS)や HTTP/2・IPv6にも対応。さらに、WP Super Cache プラグインによる静的HTMLキャッシュの生成、EWWW Image Optimizer による画像圧縮とWebPの生成・配信最適化も実現できた。

また、PolylangDuplicate Content Addon For Polylang を導入し、現在は 日本語・中国語・英語 の多言語対応を実現。podcast player プラグインにより、自作ポッドキャスト番組の掲載とオンライン再生も可能になった。

9月21日以降はコンテンツ投稿を開始し、同時にサーバの運用ログ監視も継続している。

多種多様なサイバー攻撃・DDOS攻撃との攻防戦

9月23日から26日にかけて、まず xmlrpc.php を狙ったDDoS攻撃 を受けた。同時に、wp-login.php へのアクセス、REST API 経由でのユーザー情報取得試行、および サーバ内の隠しファイルや設定ファイルへのブルートフォース的アクセス も発生した。

スペックの低いインスタンス環境であったため、数秒おきの大量アクセスにより Disk I/O が逼迫。インスタンスの ディスクIOPS許容量を長時間超過 した結果、CPU使用率が上昇し、WordPressサイトが応答不能 となった。

その後、nginx.conf および default.conf に個別の対策設定を追加し、さらに SiteGuard WP Plugin と WPS Hide Login プラグイン を導入・設定したことで、この種の攻撃は一時的に沈静化した。

9月28日から10月29日にかけては、SSHポートへの総当たり攻撃(Brute-force Attack) が断続的に発生したが、10月末にSSHポート番号を変更し、念のためにファイヤーウォール設定も厳しめに変えて、現時点では攻撃を回避できている。

Webサイトのスピード測定サービスを使ってみた

ここまで各種セキュリティ設定や性能最適化を施してきたが、果たしてユーザー目線でのアクセス速度は十分なのだろうか。気になったので、さっそくWebサイトのスピード測定サービスを使って確認してみた。

まず、GTmetrixで計測したところ、結果はなんとAランク・100%満点を獲得。

Pingdom での測定結果は98点

日本で最も利用されているGoogle製の PageSpeed Insights でも、
PC 向けが 99点、スマートフォン向けが 95点 という高スコアを記録した。

自前で構築・最適化した 無料の低スペック環境 としては、非常に良好なパフォーマンス評価といえる結果となった。

上記の数値は、アクセスの少ない夜間に実施した測定結果であるが、昼間の通常アクセス量の時でも 90点以上のスコア を安定して維持できている。
ちなみに、昼間に表示速度が遅くなる原因は、自サイト側ではなく、Cloudflare CDN や Google CDN から読み込む JavaScriptファイルの取得処理 に時間がかかっているように見える。

このサイトで使用している 国産無料テーマ Cocoon は、まさに“縁の下の力持ち”のような存在だと思う。
心から感謝を申し上げたい。

番外編:世界の大企業の公式サイトの PageSpeed Insights 得点は?

11/7(金)の昼間10~13時の自分の測定結果は以下:

企業サイトPageSpeedスマホ向けPageSpeedPC向け備考
global.toyota6487日本時価総額No.1のトヨタ
toyota.jp2920日本時価総額No.1のトヨタ
group.softbank2445日本時価総額No.2のソフトバンクグループ
www.yahoo.co.jp6298日本時価総額No.2のSBG配下のYahoo! JAPAN
www.bk.mufg.jp3949日本時価総額No.3の三菱UFJ銀行
www.sony.co.jp3050日本時価総額No.3の三菱UFJ銀行
www.sony.jp2833日本時価総額No.4のソニー
www.sony.com1634日本時価総額No.4のソニー
www.hitachi.com5694日本時価総額No.5の日立
www.nvidia.com2045米国(世界)時価総額No.1のNvidia
www.microsoft.com5489米国(世界)時価総額No.2のMicrosoft
www.apple.com6585米国(世界)時価総額No.3のApple
www.google.com9798米国(世界)時価総額No.4のGoogle
www.amazon.com54Errorで測定不可米国(世界)時価総額No.5のAmazon
www.tencent.com5579中国時価総額No.1の騰訊(Tencent)
www.alibabagroup.com5563中国時価総額No.2の阿里巴巴(Alibaba)
www.icbc.com.cn5259中国時価総額No.3の工商銀行(ICBC)

※備考:
各サイトをそれぞれ2回測定。初回は多くの場合、上記よりも低いスコアとなったため、公平を期してすべて「2回目の測定値」を採用した。
参考として、当サイトで使用しているテーマの開発者による Cocoon公式サイト も測定したところ、スマホ向けスコアは59、PC向けスコアは88であった。

※要約:
・日本の大企業サイト平均:スマホ向け 39、PC向け 57
・米国の大企業サイト平均:スマホ向け 58、PC向け 79
・中国の大企業サイト平均:スマホ向け 54、PC向け 67
各サイトでコンテンツ量や構成が大きく異なるため、単純な比較はできないものの、
総じて米国サイトが最も優秀で、日本サイトには今後の伸びしろが最も大きい と言える。

皆さんのWebサイトのスコアは何点でしたか?
よければ、コメント欄にURLと得点をぜひ教えてください!

SEO対策とコンテンツの充実に力を入れていく予定

今後は、SEO対策とコンテンツの量・質の向上に力を入れていく予定予定。
サラリーマンなので平日はなかなか時間が取れないが、
休日や今日のような有給休暇日を活用し、学びながら少しずつ改善していきたく。

コメント

タイトルとURLをコピーしました