次の方法で共有


eコマース アーキテクチャの概要

この記事では、Microsoft Dynamics 365 Commerce のアーキテクチャの概要を表示します。

Dynamics 365 Commerce オンライン拡張ソフトウェア開発キット (SDK) を使用すると、パートナーは Web サイトを簡単に拡張して、追加のビジネス ロジックとユーザー エクスペリエンス (UX) ロジックを含めることができます。 パートナーは、自由に利用できるオープンソース テクノロジを使用して、この拡張を行うことができます。

このアーキテクチャの概要は、次の Commerce のアーキテクチャの図で強調表示された「ウェブストア」 ボックスに焦点を当てます。

ウェブストア ボックスが強調表示されたDynamics 365 Commerce コンポーネントの概要。

ウェブストア コンポーネントベースのアーキテクチャ

このプラットフォームのアーキテクチャは、再利用ベースのアプローチにより、緩く結合された独立したコンポーネントを定義、実装、および構成します。 この方法では、関心の分離に重点が置かれます。

高レベル設計

機能拡張デザインは、Node.js 上に構築され、React を基盤の UX フレームワークとして使用するマイクロサービスとしてアプリケーションを実行することにより、プラットフォームとアプリケーション間の依存関係を回避します。 このプラットフォームは別個のサービスとして実行され、すべてのルーティング、コンテンツ管理システム (CMS) との統合、およびセキュリティを処理します。

高レベル アーキテクチャの概要。

要求フロー

Dynamics 365 Commerce プラットフォームを使用するオンライン ストアから顧客がページを要求するときの一般的なアーキテクチャ フローを次に示します。

  1. このプラットフォームでは要求が取得され、認証、ルーティング、ロケールの検出を行います。
  2. プラットフォームは、ページ構成データおよびデータ アクションを使用する外部サービスからのデータを含むページ オブジェクトを生成します。
  3. データ アクションによって、重複を含む複数のサービス コールのバッチ処理、集計、連鎖が可能になります。
  4. このプラットフォームは、Dynamics 365 Commerce サービス (たとえば、カタログや評価) への接続を提供する一連のコア データ アクションを提供します。
  5. ページ オブジェクトが生成された後、このプラットフォームはノード エクスプレス サーバーで実行されている React アプリケーションを呼び出します。
  6. React アプリケーションはビュー モデルを解析し、サーバー側で React ビューを実行し、HTML を生成します。
  7. React アプリケーションは、コア SDK モジュール、モジュール ライブラリ モジュール、およびカスタム モジュールで構成されます。
  8. このプラットフォームでは、適切なクッキー、ヘッダーなどと共に HTML が返されます。
  9. React スクリプトはコンポーネントを初期化し、ブラウザでのクライアント側の実行を引き継ぎ、モジュールを表示します。
  10. Node.js はツール ページと、このプラットフォームに用意されているその他の開発者向けの生産性ツールをサポートしています。

パートナー アプリケーション

パートナー アプリケーションのアーキテクチャの概要。

コンパイルされたパートナー パッケージには、SDK とモジュール ライブラリの両方が含まれています。 SDK は拡張できませんが、モジュール ライブラリのモジュールは複製され、完全にカスタマイズできます。 パートナーのカスタマイズ (モジュール、データ アクション、およびテーマ) は、コマンドライン インターフェイス (CLI) コマンドを使用してパッケージ化できます。 その後、Microsoft Dynamics Lifecycle Services (LCS) を使用してパッケージをアップロードできます。 このようにして、カスタマイズがパートナーの E コマース サイトに組み込まれます。

追加リソース

E コマース コンポーネント

CLI コマンド リファレンス