Dyno

静的サイトジェネレーターと JAMstack によくある 5 つの誤解

今回は静的サイトジェネレーターと JAMstack についてのよくある誤解についてお話しします。

いまウェブサイトの管理手法として「 JAMstack 」(ジャムスタック)が注目を集めています。 日本ではまだイノベーション理論でいうところのイノベーターとアーリーアダプターあたりまでの利用に留まっている感じですが、今のトレンドが続けば数年以内にアーリーマージョリティにも普及し、現在主流の動的 CMS と並んでウェブサイト管理の代表的な手法のひとつになっていくものと思います。

ただ、 JAMstack トレンドの中心的存在である「 JavaScript ベースの静的サイトジェネレーター」が国内ではまだ相対的にマイナーなこともあり、ビジネスにおける静的サイトジェネレーターと JAMstack の評価・活用が十分に進んでいるとはいえない状況です。

私が観測するかぎりでは、 JAMstack をすでに導入した人たちの多くは JAMstack のメリット・デメリットをよく理解した上で使われていますが、中には従来の手法とのメリット・デメリットの比較を正しく行えていない人も見られます。 たとえば、 WordPress から JAMstack に乗り換えた人の中には「 WordPress は使いものにならない」「静的サイトジェネレーターだとメンテナンスがいらない」と明らかな誤解をしている人がいます。

JAMstack には 2020 年代のウェブサイトのあり方を大きく変えるポテンシャルがありますが、間違った認識が広まってしまうと、絶好の使いどころで使われなかったり、使うべきでない場面で間違って使われてしまったりしてしまうと思います。

静的サイトジェネレーターと JAMstack に対する誤解を少しでも減らすべく今回はこれらによくある誤解について説明します。

用語

本記事では以下の用語を使用します。

  • CMS : 本来はデジタルコンテンツ管理のためのソフトウェア全般を指す意味の広いことばですが、本記事では現在 CMS の主流である動的 CMS ( WordPress 等)を意味します。
  • 静的サイトジェネレーター : 静的サイトを管理するためのソフトウェアです。プログラムを使ってウェブページを生成する技術ですが、ブラウザからアクセスがあったときに動的にページを生成するのではなく、ウェブサーバーに載せる前に事前にページを生成する形で使用するものです。
  • JAMstack : ベースは静的サイトで、動的な機能(例: 問い合わせフォームやコメント投稿等)が必要な部分ではクライアントサイドの JavaScript とウェブ API を使って実現するサイトを実現するための技術の組み合わせです。

では以下の誤解について順に説明していきます。

  • 誤解 1. 「 CMS から移行すると必ずコストが下がる」
  • 誤解 2. 「セキュリティの心配がいらない」「メンテナンスがいらない」
  • 誤解 3. 「静的サイトジェネレーターは新しい技術だ」
  • 誤解 4. 「あらゆる面で CMS より優れている」
  • 誤解 5. 「静的サイトは動的サイトよりもイケている」

誤解 1. 「 CMS から移行すると必ずコストが下がる」

ひとつめの誤解は「 CMS から JAMstack に移行するとコストが下がる」です。 確かに JAMstack は旧来の動的 CMS に比べるとサーバー代等のコストが抑えられる可能性は高いですが、手間やリスク等を含めた総合的なコストで見ると必ずしも CMS よりもコストが下がるとはかぎりません。

イニシャルコストとして、 JAMstack の導入時には JAMstack の学習と CMS からの切り替えのためのコストがかかります。 ランニングコストにおいても、コンテンツ管理において手間や待ち時間が増加することがあります。 コンテンツ管理にヘッドレス CMS を使う場合や動的な機能を多く盛り込む場合は、メンテナンスの対象が増えます。

現在現役の CMS の多くはよい意味で「枯れた技術」になっており CMS 利用にかかるコストはすでに低い水準にあります。 JAMstack でそのコストを下回るのはかんたんなことではありません。

CMS から静的サイトジェネレーター・ JAMstack に乗り換えたい理由が「低コスト」の場合は、総合的に見て本当にコストが下がるのか事前に調査すべきです。

誤解 2. 「セキュリティの心配がいらない」「メンテナンスがいらない」

ふたつめの誤解は「静的サイトジェネレーターはセキュリティの心配がいらない・メンテナンスがいらない」です。 静的サイトジェネレーターが生成するサイトは静的なので、 CMS ベースの動的なサイトに比べるとさまざまな面でセキュリティリスクが低いのは確かです。 しかし、ウェブサイトのセキュリティというのは静的サイトなら何の心配もないというものではありません。

たとえば、静的サイトジェネレーターを使う場合でも、クライアントサイドのライブラリの脆弱性を放置すればサイトの訪問者に被害を与えてしまいますし、サーバー管理の認証情報が流出してサイトが乗っ取られる可能性もあります。 非公開の情報をオペレーションのミスやプログラムのバグで公開してしまう可能性もあります。 動的な機能をつけるために API を利用している場合はそこには CMS と同様のセキュリティ対策が必要です。

静的サイトジェネレーターは CMS よりもセキュリティリスクは全体的に低い傾向にありますが、だからといってセキュリティ対応やメンテナンスがいらなくなるというわけではりません。

誤解 3. 「静的サイトジェネレーターは新しい技術だ」

静的サイトジェネレーターは JAMstack とともに近年注目を集めていますが、カテゴリとしては昔から「静的 CMS 」と呼ばれてきたものと同じです。 静的サイトの流れも含めると、静的サイトジェネレーターの歴史の長さは動的 CMS とそう変わりません。

いま注目を集めている JAMstack の新しさは、パフォーマンスとセキュリティの面ですぐれていてなおかつ開発者にやさしい、バランスのよいサイト管理が実現できることや、 JavaScript ベースの静的サイトジェネレーターを使うと単純な HTML の静的サイトを上回る体感パフォーマンスが実現できることにあります。 要素技術としての静的サイトジェネレーターが新しいわけではありません。

誤解 4. 「あらゆる面で CMS より優れている」

WordPress から JAMstack に乗り換えた人の中には「 WordPress は使えない」「 WordPress はデメリットが多い」「 WordPress は時代遅れ」などと言っている人がいます。 そのような人たちは「 CMS はデメリットばかりで JAMstack はメリットばかり」と思っていますが、これらは知識不足による間違った認識です 1

JAMstack は決して WordPress 等の旧来の CMS を置き換える上位技術ではありません。 CMS にも JAMstack にもメリットもあればデメリットもあります。 両者は単純に使いどころが違うものです。 乗り物でたとえるなら、 CMS は自動車で、静的サイトジェネレーターは自転車のロードバイクです。 情報端末でたとえるなら、 CMS はデスクトップパソコンで、 SSG はスマートフォンです。

特に WordPress は記事執筆時点で静的サイトジェネレーターも含む CMS 市場で 6 割以上の桁外れのシェアがあり、しかもそのシェアは近年も横ばい〜微増傾向にあります。 ウェブサイト管理の主流が現在も近い将来も WordPress であることは紛れもない事実です。

静的サイトジェネレーターや JAMstack を「 CMS を越える何か」だと期待して導入するのは危険です。

誤解 5. 「静的サイトは動的サイトよりもイケている」

最後の誤解は「静的サイトは動的サイトよりもイケている」です。 JAMstack が盛り上がってきているのを受けて、「動的サイトから静的サイトへの流れが来ている」「静的サイトがイケている」「これからは静的サイトだ」という単純化した見方をする方がいるようですが、その見方は正しくありません。

JAMstack トレンドというのは、動的サイトから静的サイトへの「回帰」の流れではなく、「動的サイトと静的サイトの良いとこ取りをする」「サイトの中の本当に必要な部分のみ動的にする」「より安心してサイト管理ができるようにする」という、サイト管理の「新たな定石」の普及の流れです。 「静的サイト>動的サイト」といった単純化した図式で捉えられるものではありません。

ですので、くれぐれも「いま静的サイトと JAMstack がイケてるらしい」というぼんやりした理由でサイトのプラットフォームを変更してはいけません。 「 JAMstack が流行っている」というだけで乗り換えると、あとあと冷静に考えたら実は CMS の動的サイトの方がよかったということにもなりかねません。

ということで、静的サイトジェネレーターと JAMstack によくある誤解についてでした。 静的サイトジェネレーターと JAMstack について国内でも正しい評価と活用が少しでも進めばと思います。


  1. WordPress は CMS 市場の中で圧倒的なシェアがあり 2 位に 10 倍以上の大差をつけているので、自然と「 CMS から JAMstack への乗り換え」の話題は Wordpress に関するものが多くなります。 WordPress がイケていない CMS だからではありません。