Tirez parti de Redis géré par OCI et de PostgreSQL pour votre application de commerce électronique

Résolvez les problèmes liés à la vitesse, à la synchronisation des données en temps réel, à l'intégrité des données, à l'évolutivité, à la synchronisation cache-base de données et au traitement et à l'analyse complets des transactions avec Redis et PostgreSQL gérés par OCI.

Cette architecture de référence illustre une configuration d'application cloud native innovante à l'aide d'Oracle Cloud Infrastructure (OCI) qui tire parti de Redis pour la mise en cache et de PostgreSQL pour les données transactionnelles. L'architecture montre comment les entreprises peuvent créer des applications évolutives et efficaces en utilisant Redis comme banque de données en mémoire pour améliorer les performances et PostgreSQL comme base de données robuste et polyvalente pour gérer un large éventail de charges de travail de données.

Une telle approche à double base de données est courante dans le secteur, ce qui permet une extraction de données à haut débit via Redis, tout en garantissant la persistance des données et un traitement complexe des requêtes avec PostgreSQL. Cette configuration est complétée par la suite complète de services d'OCI qui simplifient la gestion, améliorent la sécurité et améliorent la productivité. Il s'agit d'une architecture typique pour une session de commerce électronique et la gestion des stocks.

Dans une application de commerce électronique, Redis est utilisé pour sa gestion rapide des données afin de gérer les sessions utilisateur et fournit des mises à jour de stock en temps réel. Les sessions utilisateur, y compris les données du panier, sont stockées dans Redis pour un accès rapide pendant l'expérience d'achat. Parallèlement, Redis sert de cache dynamique pour les niveaux de stock, qui sont ajustés instantanément à mesure que les clients ajoutent ou retirent des articles de leurs paniers pour s'assurer que des informations de stock précises sont présentées. PostgreSQL sous-tend cette configuration en conservant les enregistrements de stock définitifs. Il traite les transactions et les détails des commandes, garantissant ainsi la cohérence et l'intégrité des données. Lorsqu'un achat est effectué, le cache d'inventaire de Redis est synchronisé et la transaction est enregistrée en permanence dans PostgreSQL, ce qui facilite le traitement des commandes et l'analyse des données historiques.

Architecture

Cette conception d'architecture convient parfaitement aux applications nécessitant un accès rapide aux données et des transactions complexes, telles que les plates-formes de commerce électronique.

L'architecture comprend un système frontal de redimensionnement automatique pour gérer la charge de manière dynamique, un bastion pour un accès sécurisé et une surveillance intégrée pour maintenir les performances et la disponibilité. Les fonctionnalités d'évolutivité mises à disposition par le cloud, associées aux services OCI entièrement gérés, rendent cette architecture idéale pour un site de commerce électronique.

Le diagramme suivant illustre cette architecture de référence.



oci-redis-postgresql-diagram-oracle.zip

L'architecture comporte les composants suivants :

  • Service Bastion

    Oracle Cloud Infrastructure Bastion fournit un accès sécurisé limité et limité dans le temps aux ressources qui ne disposent pas d'adresses publiques et qui nécessitent des contrôles d'accès aux ressources stricts, tels que Bare Metal et machines virtuelles, Oracle MySQL Database Service, Autonomous Transaction Processing (ATP), Oracle Container Engine for Kubernetes (OKE) et toute autre ressource qui autorise l'accès SSH (Secure Shell Protocol). Avec le service Oracle Cloud Infrastructure Bastion, vous pouvez activer l'accès aux hôtes privés sans déployer ni gérer d'hôte de saut. En outre, vous bénéficiez d'une meilleure posture de sécurité avec des autorisations basées sur l'identité et une session SSH centralisée, auditée et limitée dans le temps. Le bastion Oracle Cloud Infrastructure élimine le besoin d'une adresse IP publique pour l'accès au bastion, ce qui élimine les tracas et la surface d'attaque potentielle lors de l'accès distant.

  • service PostgreSQL

    Oracle Cloud Infrastructure Database avec PostgreSQL est un service PostgreSQL géré qui libère votre équipe des tâches de routine, telles que l'application de patches et les sauvegardes. Sa caractéristique principale est le stockage optimisé OCI Database, qui améliore la résilience et les performances du système. En outre, cette architecture permet une évolutivité indépendante du calcul et du stockage. OCI Database avec PostgreSQL offre également une sécurité des données améliorée avec un cryptage de bout en bout.

  • Cache avec Redis

    Oracle Cloud Infrastructure Cache with Redis est une solution complète de mise en cache gérée en mémoire reposant sur Redis open source. Ce service entièrement géré accélère les lectures et les écritures de données, améliorant considérablement les temps de réponse des applications et les performances de la base de données pour offrir une expérience client améliorée.

Recommandations

Utilisez les recommandations suivantes comme point de départ. Vos exigences peuvent différer de l'architecture décrite ici.
  • VCN

    Lorsque vous créez un VCN, déterminez le nombre de blocs CIDR requis et la taille de chaque bloc en fonction du nombre de ressources que vous prévoyez d'attacher aux sous-réseaux du VCN. Utilisez des blocs CIDR qui se trouvent dans l'espace d'adressage IP privé standard.

    Sélectionnez des blocs CIDR qui ne chevauchent aucun autre réseau (dans Oracle Cloud Infrastructure, votre centre de données sur site ou un autre fournisseur cloud) vers lequel vous souhaitez configurer des connexions privées.

    Après avoir créé un VCN, vous pouvez modifier, ajouter et supprimer ses blocs CIDR.

    Lorsque vous concevez les sous-réseaux, tenez compte de vos exigences en matière de flux de trafic et de sécurité. Attachez toutes les ressources d'un niveau ou d'un rôle spécifique au même sous-réseau, qui peut servir de limite de sécurité.

  • Cloud Guard

    Clonez et personnalisez les recettes par défaut fournies par Oracle pour créer des recettes de détecteur et de répondeur personnalisées. Ces recettes vous permettent de spécifier le type de violation de sécurité qui génère un avertissement et les actions autorisées. Par exemple, vous pouvez détecter les buckets Object Storage dont la visibilité est définie sur Public.

    Appliquez Cloud Guard au niveau de la location pour couvrir la portée la plus large et réduire la charge administrative liée à la maintenance de plusieurs configurations.

    Vous pouvez également utiliser la fonctionnalité Liste gérée pour appliquer certaines configurations aux détecteurs.

  • Security Zones

    Pour les ressources nécessitant une sécurité maximale, Oracle recommande d'utiliser des zones de sécurité. Une zone de sécurité est un compartiment associé à une recette de stratégies de sécurité définie par Oracle basée sur les meilleures pratiques. Par exemple, les ressources d'une zone de sécurité ne doivent pas être accessibles à partir du réseau Internet public et elles doivent être cryptées à l'aide de clés gérées par le client. Lorsque vous créez et mettez à jour des ressources dans une zone de sécurité, Oracle Cloud Infrastructure valide les opérations par rapport aux stratégies de la recette de zone de sécurité et refuse les opérations qui violent l'une des stratégies.

En savoir plus

En savoir plus sur PostgreSQL et Redis.

Consultez les ressources supplémentaires suivantes :

Remerciements

Authors: Julien Lehmann, Mike Sorolla

Contributors: John Sulyok