オーバーヘッドの原因となる顧客Webサイトが1つあります(http://www.modacalcio.it/en/by-kind/football-boots.html
)。
htop
を開いた状態でWebサイトをナビゲートしようとしていますが、Webサイトの左側にあるajaxリンクによってWebサイトの多くの負荷がかかっています。
ウェブサイトは、3 procと2GB RAMを備えたVPSでホストされ、十分なハードディスク容量があります。
本当の問題は、このWebサイトが新しく、あまりアクセスされていないことです。
Http-statusモジュールから、オーバーヘッドはボット(Googleボット、Bingボット、hrefsチェッカーなど)によって引き起こされることがわかります。
だから私は、おそらくそれらのすべてのリンクを一度にクロールしようとしているクモが原因だと思った-これがこのオーバーヘッドを引き起こしているのだろうか?
また、これらのリンクにrel="nofollow"
を挿入しましたが、これはボットを遠ざけません。
これらのボットへのリンクを無効にするためのコードまたはPleskを使用する方法はありますか?
オーバーヘッドは、データとその提供方法が原因である可能性があります。
here のような診断を実行すると、このページに対する各リクエストが150 MBの個別のリクエストになり、ページサイズが2.2MBを超え、ロードに最大9秒かかることが示されました。ヘッダーを見ると here で、Cache-ControlとPragmaでno-cache
が指定されているようです。
HTTPキャッシュを有効にし、Nginxサーバーでgzip
圧縮を使用することもできます(ヘッダーとしてサーバーとして示されています)。詳細はこちらをご覧ください: nginxでHTTPキャッシュとgzipを設定する こちらのGoogle記事もご覧ください: gzip圧縮の仕組み
また、サーバーの コアモジュール構成 を確認して、 keepalive_disable がnone
に設定され、 keepalive_requests が設定されていることを確認することもできます。少なくともデフォルト数(100)まで。 PleskのApacheの場合、 this threadが役立ちます。
これらの変更後にシステムのリソースを監視すると、VPS構成が十分であるか、アップグレードする必要があるかがわかります。
それでもロボットがリンクをクロールしないようにする場合は、 here のように、robots.txtファイル内でリンクを禁止として指定します。