Leverage OCI-Managed Redis and PostgreSQL for Your E-Commerce Application

Solve your e-commerce application challenges related to speed, real-time data synchronization, data integrity, scalability, cache-database synchronization, and comprehensive transaction processing and analysis with OCI-managed Redis and PostgreSQL.

このリファレンス・アーキテクチャは、キャッシュにRedisとトランザクション・データにPostgreSQLの両方を活用するOracle Cloud Infrastructure (OCI)を使用した最新のクラウドネイティブ・アプリケーション設定を示しています。このアーキテクチャは、Redisをインメモリー・データ・ストアとして使用してパフォーマンスを向上させ、PostgreSQLを幅広いデータ・ワークロードを処理するための堅牢で汎用性の高いデータベースとして使用することで、スケーラブルで効率的なアプリケーションを構築する方法を示しています。

このようなデュアルデータベース・アプローチは業界では一般的であり、Redisによる高速データ取得を可能にすると同時に、PostgreSQLによるデータの永続性と複雑な問合せ処理を確保します。This setup is augmented by OCI's comprehensive suite of services that simplify management, enhance security, and improve productivity.これは、Eコマース・セッションおよび在庫管理の一般的なアーキテクチャです。

eコマース・アプリケーションでは、Redisは迅速なデータ処理に利用され、ユーザー・セッションを管理し、リアルタイムのインベントリ更新を提供します。ショッピング・カート・データを含むユーザー・セッションは、ショッピング・エクスペリエンス中に迅速にアクセスするためにRedisに格納されます。同時に、Redisは在庫レベルの動的キャッシュとして機能し、顧客がカートにアイテムを追加または削除すると即座に調整され、正確な在庫情報が提示されます。PostgreSQLは、最終的な在庫レコードを保持することで、この設定を支えます。トランザクションと注文の詳細を処理し、データの一貫性と整合性を確保します。購入すると、Redisのインベントリ・キャッシュが同期され、トランザクションがPostgreSQLに永続的に記録されるため、注文処理および履歴データ分析が容易になります。

アーキテクチャ

このアーキテクチャ設計は、高速なデータ・アクセスを必要とするアプリケーションや、Eコマース・プラットフォームなどの複雑なトランザクションに適しています。

このアーキテクチャには、負荷を動的に管理する自動スケーリング・フロント・エンド、安全なアクセスのための要塞ホスト、パフォーマンスと可用性を維持する統合監視が含まれます。The scaling capabilities made available by the cloud, combined with OCI fully managed services, make this architecture ideal for an e-commerce site.

次の図は、このリファレンス・アーキテクチャを示しています。



oci-redis-postgresql-diagram-oracle.zip

このアーキテクチャには次のコンポーネントがあります。

  • Bastionサービス

    Oracle Cloud Infrastructure Bastionは、パブリック・エンドポイントがなく、ベア・メタルや仮想マシン、Oracle MySQL Database ServiceAutonomous Transaction Processing (ATP)、Oracle Container Engine for Kubernetes (OKE)、およびSecure Shell Protocol (SSH)アクセスを許可するその他のリソースなど、厳格なリソース・アクセス制御を必要とするリソースへの制限付きで時間制限付きのセキュア・アクセスを提供します。Oracle Cloud Infrastructure Bastionサービスを使用すると、ジャンプ・ホストをデプロイおよび保守せずにプライベート・ホストへのアクセスを有効にできます。In addition, you gain improved security posture with identity-based permissions and a centralized, audited, and time-bound SSH session.Oracle Cloud Infrastructure Bastion removes the need for a public IP for bastion access, eliminating the hassle and potential attack surface when providing remote access.

  • PostgreSQLサービス

    PostgreSQLを使用したOracle Cloud Infrastructure Databaseは、パッチ適用やバックアップなどのルーチン・タスクからチームを解放する管理対象PostgreSQLサービスです。その際の特徴は、OCI Databaseに最適化されたストレージであり、システムの回復力とパフォーマンスを向上させます。さらに、このアーキテクチャにより、コンピュートとストレージの独立したスケーラビリティを実現できます。OCI Database with PostgreSQL also provides enhanced data security with end-to-end encryption.

  • Redisを使用したキャッシュ

    Oracle Cloud Infrastructure Cache with Redisは、オープン・ソースのRedisの基盤の上に構築された包括的なマネージドインメモリー・キャッシュ・ソリューションです。このフルマネージド・サービスは、データの読み取りと書き込みを高速化し、アプリケーションの応答時間とデータベースのパフォーマンスを大幅に向上させ、カスタマー・エクスペリエンスを向上させます。

レコメンデーション

次の推奨事項を開始点として使用します。お客様の要件は、ここで説明するアーキテクチャと異なる場合があります。
  • VCN

    When you create a VCN, determine the number of CIDR blocks required and the size of each block based on the number of resources that you plan to attach to subnets in the VCN. Use CIDR blocks that are within the standard private IP address space.

    Select CIDR blocks that don't overlap with any other network (in Oracle Cloud Infrastructure, your on-premises data center, or another cloud provider) to which you intend to set up private connections.

    After you create a VCN, you can change, add, and remove its CIDR blocks.

    サブネットを設計するときには、トラフィック・フローおよびセキュリティ要件を考慮してください。特定の層またはロール内のすべてのリソースを、セキュリティ境界として機能する同じサブネットにアタッチします。

  • クラウド・ガード

    Oracleが提供するデフォルトのレシピをクローニングしてカスタマイズし、カスタム・ディテクタおよびレスポンダ・レシピを作成します。これらのレシピでは、警告を生成するセキュリティ違反のタイプと、それらに対して実行を許可するアクションを指定できます。たとえば、可視性がパブリックに設定されているオブジェクト・ストレージ・バケットを検出できます。

    クラウド・ガードをテナンシ・レベルで適用して、最も広い範囲をカバーし、複数の構成を維持する管理負担を軽減します。

    管理対象リスト機能を使用して、特定の構成をディテクタに適用することもできます。

  • セキュリティ・ゾーン

    最大限のセキュリティを必要とするリソースの場合、Oracleではセキュリティ・ゾーンを使用することをお薦めします。セキュリティ・ゾーンは、ベスト・プラクティスに基づくセキュリティ・ポリシーのOracle定義レシピに関連付けられたコンパートメントです。たとえば、セキュリティ・ゾーン内のリソースは、パブリック・インターネットからアクセスできず、顧客管理キーを使用して暗号化する必要があります。セキュリティ・ゾーンでリソースを作成および更新すると、Oracle Cloud Infrastructureでは、セキュリティ・ゾーン・レシピのポリシーに対して操作が検証され、ポリシーに違反する操作が拒否されます。

詳細の参照

PostgreSQLおよびRedisについてさらに学習します。

次の追加リソースを確認します。

確認

Authors: Julien Lehmann, Mike Sorolla

Contributors: John Sulyok