動的生成の光と陰
WordPressに移行して、このサイトはアクセスが来るたびにページを生成する動的生成になったわけですが、1週間ほど本格運用してみて、良い部分と悪い部分がある程度分かってきました。
動的生成の良い部分は、やはりMovable Typeのような静的生成システムにある再構築という動作が必要ないことです。静的生成では例えば記事を追加した時や、CSSを変更した時など、必ずといっていいほど再構築が必要になります。再構築時には待つ事しかできなくなるので、そこで作業が中断されることもしばしばありました。それに比べて動的生成ではそのような待ち時間が発生することがまず無いので、快適にBlogを更新することができるわけです。
しかし、動的生成はBlogを快適に更新することができても、快適に表示をすることができない場合があります。静的生成ではアクセスが来た場合は、すでに生成されているファイルを返すだけなので、高速に、そしてサーバーにそれほど負荷をかけることなく表示をすることができます。しかし動的生成では、アクセスが来た場合にはページを生成するという動作が起こるので、その都度サーバーに負荷がかかる事になります。そのため、サーバーの性能がページの表示速度に直接つながるので、ページの表示が遅くなる可能性があるわけです。これが動的生成の悪い部分ではないでしょうか。
残念ながら、このSummerWindが置いてあるサーバーの性能はそれほど高いものではないため、結果として静的生成を使っていたころよりもページの表示が遅くなってしまっています。現在はあの手この手を使ってできる限り高速化を施すことで、それなりの速度でページを表示することができるようにしています(この方法については、また改めて書きます)。動的生成は静的生成よりも快適に扱えるものかもしれませんが、その分、ハードウェアへの要求が高まるので、使いどころをうまく考えて使ったほうがよさそうですね。結局のところ、必ずしもどちらかの方がいいということでもないようです。