auの日記

プログラミング初心者の日記。(auはハンドルネームです)

静的サイトジェネレータについて調べてみた

auです。

React Gatsbyについて調べていたら、「静的サイトジェネレータ」というシステムの一つということが分かったのですが、静的サイトジェネレータを知らなかったので調べてみました。

静的サイトジェネレータとは

静的サイトジェネレータ(Static Site Generator)とは、CMS(コンテンツ・マネジメント・システム)の一つです。

CMSについて軽く触れておくと、Webサイトを作る際に必要な知識がなくても、簡単に構築・管理・更新ができるシステムです。お手軽Webページ管理システムって感じですね。
代表的なもので、WordPressがあります。

CMSの参考サイト
www.hitachi-solutions.co.jp


話は戻りまして、静的サイトジェネレータは、記事の内容をビルド時に作成します。普通のCMSでは、記事を開いたときに内容が生成されますが、静的サイトジェネレータは記事を開く前に生成します。

このようにすることで、様々な利点があります。

  • 処理負荷に強くなる:サイトを生成する際のスループットが軽くなるため
  • 可用性が高い:CMSでは、サイトを生成するためのDBに障害が起きた場合に止まってしまうが、それがない
  • Gitで管理ができる:エンジニアにとって嬉しい(GitHub Pageしか経験ないけど)

静的サイトジェネレータは、単純なテキストファイルで生成されます。記事の内容をMarkdown形式で記述していくことが多いようです。

デメリットもあるようです。

  • 動的にできない:「静的」とついているので当たり前ですが、PHPと連携して動的なサイトを作ることには適していないようです。
  • プラグインが少ない:Word Pressよりも歴史が浅いので当然ですが、プラグインが少ないです。楽はできなさそうですが、有名なプラグインを作れば英雄になれるかもしれません。

参考
qiita.com
photo-tea.com