
・Google SearchConsoleでLCP問題というエラーが表示された
・LCP問題ってそもそもなんで起こるの?
・LCP問題の根本原因の解決方法を知りたい
・LCP問題のもっとも簡単な切り分け方法は何?
こういった疑問に答えます。
Google SearchConsole で『 LCP問題:4秒超(パソコン)』、『 LCP問題:2.5秒超(パソコン)』のエラー検知を出現!直し方は?

先日ふと、Google SearchConsoleを眺めていると、2つのエラーを検出していました。
赤いグラフが『LCP問題:4秒超』、黄色いグラフが『LCP の問題: 2.5秒 超(パソコン)』です。
Google SearchConsole を観てないないわけではなかったのですが、このグラフは全く見ておらず、ふと見たらこんなことになっていました。

LCP問題の問題解決で検索してみると、正直言うと「本当に直したころとあるの?」と思えるような微妙な情報や対応内容が散見されます。
そういった情報を見ていると、あなたのWordPress環境をいっそう悪くしてしまう可能性があるので、「今回は実際にどうやって直したのか?、その切り分け方法は?」についてご紹介したいと思います。
LCP問題の切り分け方法と確認ポイント
LCP問題は、実は切り分けがとても難しい問題で、基本的には以下のようなアプローチが必要です。
- LCP問題がパソコンかモバイルのどちらで発生しているのか、その両方で発生しているのか?
- 事象が発生しているページで、極端に大きい画像を利用していないか否か
- 継続的に発生しているのか、一時的な事象発生なのか
まずは、このような状況が発生していないかを冷静に判断しましょう。
直ぐに画像圧縮のプラグインを入れたり、構成を一気に変更することは絶対にやってはいけません。
そして、グラフは日ごとにレポートの結果が出てきます。
つまり、切り分け作業は焦らず、1日一つずつ、簡単に実施可能なものから実施していきます。
重要なこととしては、必ず「何の作業を行ったのか?」を記録に残しておくことです。
LCP問題がパソコンかモバイルのどちらで発生しているのか、その両方で発生しているのか?
LCP問題の切り分けに最初に見るべきポイントは、パソコンなのかモバイルなのか、その両方で発生しているのか?どちらで発生しているのかを確認します。

タクゾーの環境では、既に改善してしまっているため事象が発生しているURLがありませんが、上記のグラフから『LCP問題:4秒超(パソコン)』は、
- 9月12日から発生している
- 一つのページで発生しているわけではなく、対象のURLは44個ある(複数のページで発生している)
ということです。
複数のページで事象が発生している場合には、単一のページの構成の問題ではなく、環境全体で何かしらの問題が発生している可能性があるということです。
次に、同様に『LCP問題:2.5秒超(パソコン)』の結果を見てみると、『LCP問題:4秒超(パソコン)』の発生以前に長期に渡って発生しており、「結果的に2.5秒で済んでいたものが4秒になったのでは?」という仮説が立てられます。

その場合、何を見るべきかというと、WordPressの設定よりはサーバー側のリソースが足りているかどうか?を確認する方が最も早いです。
勿論、過去に何かしらのプライグインをインストールしたことで、こういった事象が発生する場合があります。
ですので、WordPressに新たなプラグインをインストールした際には、「何を、いつインストールしたのか?」変更履歴を記録しておくと、トラブル発生時に大変役に立ちます。
タクゾーの場合は、実はこの 『LCP問題:4秒超(パソコン)』 の後に、データベースの接続エラーが突然発生しました。
では、その際にどうやって直したのかというと、サーバー(インスタンス)のリブートのみです。
ページ(URL)に重い画像の有無の確認
事象が発生しているURLが、単一か、もしくは少数のページで発生している場合には、環境全体での調査ではなく、そのページに重い画像の有無を確認しましょう。
なぜなら、事象が発生しているページの画像が重く(大きい)、画像の読み込みが完了するまでに時間が掛かっていることがLCD問題を引き起こしている可能性があります。
その場合の事象の切り分けとしては、
- 画像のサイズを変更してサイズを小さくする
- 画像のフォーマットを変更する
- 画像を削除してみる
などです。
試し易いものから一つずつ試してみましょう。
長期間に渡り『LCP問題:4秒超(パソコン)』が継続している場合には?
『LCP問題:4秒超(パソコン)』 が長期に発生している場合には、そもそもWordPressの設定かサーバーのリリースが継続的に不足しているかどうかを確認します。
サーバーのリソース不足の判断は、
- CPU使用率が常に100もしくはそれに近い状況か否か
- メモリーがスワップ領域を常に利用している
を確認します。
CPUの使用率を確認するtopコマンド、メモリーに使用率の確認にはfreeコマンドを利用します。
$ top

$ free -m

今回のタクゾーの環境で言うと、CPUリソース的には問題ないものの、メモリーが常にスワップ(Swap)を利用しているためメモリ不足であると言えます。
Swapとは、メモリーが足りずその記憶領域をディスク(SSD)に対比して処理しているということになります。
タクゾーが利用しているAmazon Lightsailのプランは最も安い月額3.5ドルになりますが、5ドルのプランに変更すればメモリーは1GBを使えることになり、SwapのUsedが484MBの分もメモリー側で処理できることになります。
番外編:メモリー余っているのにSwapが使われてしまう
Linuxサーバー環境で、サーバーのメモリー搭載量が十分にあるのに、Swap領域を使用されてしまうことがあります。
これは、Linuxの標準設定ではSwap領域を(積極的に?)利用する設定になっているからとなります。
メモリーに十分に空き容量がある場合には、以下の設定を行うことでSwap領域への書き込みを制限できます。
# echo 1 > /proc/sys/vm/swappiness
もしくは
# sysctl vm.swappiness=1
なお、デフォルト値は60、最大値は99です。
値が大きいほど積極的にSwap領域を利用することになります。
タクゾーの現在のメモリー状況を考慮すると、Amazon Lightsailのプランを一つ上げるべきタイミングなのかもしれません。
アクセス数と月額のAdsenseの売り上げから来年にはプランを変更しようかなと思います。


まとめ
今回は、タクゾーの環境で実際に発生し、解決した『LCP問題:4秒超(パソコン)』と『 LCP問題:2.5秒超(パソコン)』のエラーの解決方法を寄稿しました。
基本的には、
- リブートして改善するかを確認する
- 発生原因をイメージする(仮説を立てる)
- リソースの状況を確認する
です。
間違っても、闇雲に多くのプラグインのインストールやアンインストールしたり、設定変更を一気に実施することは避けましょう。
本記事がお役に立てると幸いです。
なほ、本ブログではこのようなITエンジニアの小技をご紹介していますので、合わせてご覧ください。
