Blogが重くなる原因(その1)

いろいろなBlogをまわっていると、「最近表示が重くて・・・」という書き込みを見ることがよくあります。
そこで、Blogが重くなる原因のうち、主な2つをあげます。
今日はその1つ目として、「サーバーの負荷」をあげます。

Webサーバーにアクセスが集中すると重くなる

BlogはWebページの一つの形態ですが、Webページは「Webサーバー」と呼ばれるコンピュータによって処理されます。
パソコンでWebページにアクセスすると、Webサーバーはそのページのデータを私たちのパソコンに送り返してきます。そのデータを元に、Intenret Explorer等のWebブラウザソフトがページを表示します。

1台のWebサーバーは、多数のWebページを処理します。しかし、処理するページの数が増えてくると、一度に多数のパソコンの処理を受け付けることが必要になり、処理に時間がかかるようになってきます。
「夜になると表示が重い」というパターンはよくありますが、夜はBlogにアクセスする人が多いので、Webサーバーの負荷が高くなり、表示が重くなるわけです。

動的生成は負荷が高い

一般的なWebページでは、あらかじめWebページのファイルを作っておいて、それをWebサーバーにアップロードすることが多いです。
そのようなページをパソコンで表示しようとした場合、Webサーバーはファイルからデータを読み出して、パソコンに送信するという処理をします。

ところが、Blogの場合は、あらかじめWebページのファイルを作っておかずに、ページにアクセスがあった時点でその場でデータを作り出してパソコンに送信する、といった処理が行われることがよくあります。
このような仕組みを「動的生成」などと呼びます。
レンタルBlogサービスでは、動的生成を取っているところが多いようです。

Blogではテンプレートを変えるなどしてカスタマイズすることがよくありますが、テンプレートを変えるとそのBlogの多くのページに影響が及びます。
そのため、あらかじめページをファイルに保存する方式だと、テンプレートを変えるたびに多くのページを作り直す必要が出ます。
しかし、Blogのページの中には、アクセスされないページもあります(特に古いページ)。そのため、すべてのページをいちいち作り直すのは効率が悪いです。
また、ページをあらかじめ作ってファイルに保存すると、その分だけディスク容量を消費するという問題もあります。
これらのことから、動的生成にして、アクセスがあった時にその都度ページを生成するようにしているわけです。

ただ、動的生成では、あらかじめファイルを作っておく方式に比べると、ページを表示するたびにWebサーバーに負荷がかかります。
あらかじめファイルを作っておく方式なら、単にファイルを読み出してパソコンに送信すれば済みます。
しかし、動的生成だと、プログラムを実行してページのデータを作り出し、それをパソコンに送信するという手順になります。
つまり、あらかじめファイルを作る方式に比べてより負荷がかかりやすく、ページの表示が重くなりやすいと言えます。

解決策

サーバーの負荷で重い場合は、一般ユーザーでできる解決策はあまりありません。

レンタルBlogの場合だと、業者がサーバーの性能をアップしてくれるのを待つか、あるいは他の業者に乗り換えるといったぐらいではないかと思います。
ただ、業者を乗り換えると、ページのURLが全部変わってしまいますので、その点がネックです。

一方、Movable Typeなどのサーバーインストール型のBlogツールの場合も、別のレンタルサーバーに乗り換えるなどの策を取るぐらいでしょう。
サーバーインストール型の場合、独自ドメイン(○○○.com等)で運用していれば、ページのURLを変えずにサーバーを移転することができる場合もあります。

また、Movable Typeなどのように、ページを静的に生成することができるBlogツールなら、動的生成よりも負荷はかかりにくいです。
ページごとに動的生成と静的生成を選べるBlogツールであれば、アクセスが多いページは静的生成にし、そうでないページは動的生成にする、といった方法も考えられます。