JAMstack 完全入門
著
最近になってようやく? サーバーレス周り(何処)への熱が高まり、『JAMstack 完全入門 ハイパフォーマンスWebサイト構築』を読みました。JAMstack誕生の歴史的経緯から概要、具体的な事例に至るまで、非常にコンパクトにまとまっており、読みやすかったです。
現在オーソドックスに使われているサーバー技術の責務をフロント側に寄せることで、より速く、安全で、コストを抑えたWebサイト運用を実現するものです。
なんとなく直感的にですけど、ドキュメント志向なWebが進化すべき方向性の一つとして、かなり将来有望な印象を受けるのですよね......アプリケーション志向のWebも同じ道を辿れるのかは、よくわからないけれど。
あらかじめマイクロサービスのAPIを利用してデータを取得し、ページ内容を静的なHTMLとして書き出しておくことで即座にレスポンスを返すことを可能にします。
良好な表示パフォーマンスを実現する的な文脈においてもJAMstackが魅力的に映るのは、まさに上記の理由によるところが大きいです。まぁ、どういうプロセスで発生するどういうコストをどこに寄せ直すかっていう単純なコスト移動のトレンドとも捉えられるけど、それでも自分には興味深い変化。加えて
サーバーサイドをも乗りシックな構成ではなく、マイクロサービスのAPIとして抽象化することで脆弱性に対する攻撃対象を減らすことができます。
というのも素晴らしい。もちろん、あらゆるWebサイトに関しサーバー不要論を唱えるつもりは(少なくとも今はまだ)無いけれど、サイト運営において極めて大きな悩みの種であるサーバーの運用保守、とりわけセキュリティ確保という命題からWeb担当者が解放され得るなら、そういう方向にどんどん舵を切っていくべきだろうと。
クライアントとサーバーが密結合しているものはJAMstackではありません。
JAMstackとは何かを語るのに、上記の表現もわかりやすかったです。結局のところ、宇宙のすべて(などと書くと途端に宗教じみてしまうけど)が時間の経過とともに分化(≒マイクロ化)していくとの前提に立つなら、その摂理に逆らうことなく技術スタックを構成するのが合理的に思えます。だからこそ、密結合より疎結合バンザイ。
ビルド速度に関しては改良が続けられており、Gatsbyでは10万ページのビルドで1分強という数字が出ています。
......Gatsbyってそんなに速いんですか(もちろん実行環境によるだろうけど)。まだまだ勉強しなければならないこと、たくさんありますね......。