【海外イベント紹介】Headless vs Traditional eCommerce Platforms
オランダのアムステルダムにある「財団法人GitNation」が毎年開催するカンファレンス「JSNation」。
今回は、そこで2021年に行われたプレゼンテーションから、Commerce Layer社、Fabrizio Picca氏のライトニングトークの内容をお届けします。
同社が提供するプラットフォーム「Commerce Layer」において、従来のWebデータベースの問題点をJamstackのアーキテクチャでどう解決しているのか、注目です。
従来のモノリスなシステムの問題点
従来のWebシステムの多くは巨大なモノリスと化しているといわれています。
「モノリス(monolith)」とは、遺跡などにある巨大な平らな一枚岩のこと。ここでは、大きな1つのものにすべてを詰め込んだシステムのことを意味します。
そのようなシステムには、大抵、以下のような問題があります。
柔軟性の欠如
一部のモジュールを変更しただけでも、システム全体に影響を与えてしまいます。つまり、ニーズの変化に素早く対応できません。
遅いWebサイト
すべてを1台で賄うというアーキテクチャでは、モダンなCDNのような機能を活かせません。GoogleのCore Web Vitalsのような、速さを指標とするアルゴリズムに変更された場合、遅いWebサイトでは太刀打ちできません。
セキュリティの問題
たった1つの欠陥がサービスの停止を招きます。これは、セキュリティ上の大きなリスクです。
デスクトップを意識した造り
レガシーシステムが稼働しているため、多くがデスクトップ向けに作られています。モバイルファーストのような考え方が浸透していません。
高額
良いサーバーにすべてを入れようとすると、不要な機能やスペックも漏れなく実装されているため、高額な費用がかかります。
実は、現在の多くのサービスやWebアプリケーションがこのような問題を抱えています。
では、どのようにこれらの問題に取り組むことができるのでしょうか。
解決策をみていきましょう!
Jamstackの思想がもたらす解決策
これらの問題を解決するためには、モジュール化が必要です。
つまり、モノリスを解体し、上手に分割するのです。
提供しているサービスを細かな単位に分け、疎結合で繋ぐことで、それぞれの依存関係を少なくします。
まさに、Jamstackの思想です。
Commerce Layerでは、上記の思想に基づいてサービスのアーキテクチャを設計しています。
下の図を見てください。
例えば、在庫管理にはHeadless CMSを使用しています。それが静的サイトジェネレーターと連動しています。生成されたサイトはCDNによって配信されます。
サービスの本体であるCommerce Layerとは、それぞれがAPIでつながっています。在庫の参照、チェックアウト、顧客アカウントの管理情報などがCDN経由で取得されます。
図の右の方にあるのは、参照する他のサービスです。
例えば、グローバルにeコマースを展開するには、その地域に合った税金計算の仕組みが必要です。疎結合で各種の税金計算サービスを参照することで、シンプルなアーキテクチャを維持できます。
CRMのようなレガシーシステムにも、不要な依存関係を作らずに参照できます。
結果として、以下のことが実現できるのです。
抜群の柔軟性
安く、スケールしやすい
疎結合によるセキュリティ
オムニチャネルの設計
将来性
まとめ
Commerce Layer社のサイトを見てみると、モノリスをデカップルするという従来の概念を覆す方法でeコマースを実現しようとしていることがわかります。
同じブランドやショッピングサイトにおいて、複数の言語や地域でサービスを展開しようとすると、以下のような難題に直面します。
税金の計算方法が異なる
配送業者へ自動的に注文を送信する方法やその管理の仕方も異なる
従来のモノリスなシステムにすべて組み込もうとすると、非常に複雑になります。
なんとか動くようになったとしても、もう触ることすら恐ろしい、「誰もこれ以上変更を加えませんように…」と願うだけのシステムが出来上がってしまうでしょう。
実際、そのようなシステムは世の中に無数に存在しているのです。
こう考えると、グローバルなeコマースはJamstackの利点を最大限に活かすことができる分野といえます。
ただし、この疎結合を実現するためには、非常に精緻な設計が必要です。
果敢に挑む開発者たちによって、Jamstackにおける一つの理想の形が達成されるというのは、とても頼もしいことです。
最後まで読んでくださり、ありがとうございました。
株式会社ヒューマンサイエンスは、他社にはない、「ドキュメント制作のノウハウ」×「最新のWeb開発技術(Jamstack)」を用いて、Webコンテンツとプラットフォームのソリューションをご提供します。
関心がある方は、ぜひこちらまでお問い合わせください!
株式会社ヒューマンサイエンス
https://www.science.co.jp/document/jamstack.html
この記事が気に入ったらサポートをしてみませんか?