Fermer

juin 26, 2024

Récupérez vos données d’application à l’aide d’AWS ElastiCache / Blogs / Perficient

Récupérez vos données d’application à l’aide d’AWS ElastiCache / Blogs / Perficient


AWS ElastiCache est un service qui améliore les performances des applications Web en récupérant des informations à partir de caches en mémoire à gestion rapide.

Qu’est-ce que la mise en cache ?

La mise en cache est le processus de stockage de données dans un cache. Un cache est une zone de stockage temporaire. Le cache est optimisé pour une récupération rapide, avec l’inconvénient que les données ne sont pas durables.

Le cache est utilisé uniquement à des fins de lecture, qui peuvent accéder rapidement aux données de votre application.

ElastiCache prend en charge les deux moteurs de mise en cache en mémoire open source populaires suivants :

  • Memcaché : Un système de mise en cache d’objets à mémoire distribuée hautes performances, bien adapté aux cas d’utilisation où un stockage et une récupération simples de valeurs-clés sont requis.
  • Rédis: Un magasin clé-valeur open source en mémoire qui prend en charge diverses structures de données telles que des chaînes, des hachages, des listes, des ensembles, etc. Redis est souvent utilisé pour la mise en cache, la gestion de sessions, l’analyse en temps réel et la messagerie.

Quel moteur de mise en cache est le meilleur ?

Redis a plus de fonctionnalités avancées que Memcached. Un serveur de structure de données stocke les données dans un format clé-valeur pour être servies rapidement. Il permet la réplication, le clustering et la persistance configurable. Il est recommandé si vous souhaitez un magasin de données hautement évolutif partagé par plusieurs processus, applications ou serveurs ou simplement comme couche de mise en cache.

D’un autre côté, Memcached est un magasin clé-valeur en mémoire pour de petits morceaux de données qui récupèrent des données à partir d’une base de données, d’appels d’API ou de rendu de page.

Memcached est utilisé pour accélérer l’application Web dynamique.

Les deux moteurs de mise en cache ont leur propre utilisation en fonction de vos besoins. Ici, nous allons utiliser Redis Cache.

Schéma d’architecture d’AWS ElastiCache

Architecture

Selon le diagramme d’architecture, chaque fois qu’une demande de lecture est générée par l’utilisateur, les informations sont d’abord recherchées dans ElastiCache. Si les données ne sont pas disponibles dans le cache, la demande est alors servie depuis la base de données.

Si les données demandées sont présentes dans le cache, alors la réponse est très rapide ; sinon, la base de données est chargée de répondre à la demande, ce qui augmente la latence.

Pourquoi nous avons besoin d’AWS ElastiCache

  • Amélioration des performances: ElastiCache stocke les données fréquemment utilisées de la base de données, ce qui contribue à améliorer les performances de l’application.
  • Évolutivité : ElastiCache peut rapidement aider à configurer, gérer et faire évoluer le cache en mémoire distribué dans le cloud.
  • Haute disponibilité et fiabilité: ElastiCache prend en charge la fonctionnalité multi-AZ, ce qui signifie que si une AZ n’est pas disponible, ElastiCache continue de servir les données dans l’autre AZ. ElastiCache prend en charge la réplication et fournit un basculement automatique, dans lequel si le nœud maître échoue, l’un des réplicas en lecture se promeut en tant que nœud maître. Ceci est particulièrement crucial pour les applications critiques qui nécessitent une disponibilité constante.
  • Rentabilité: Avec ElastiCache, il n’y a pas de coût initial ni d’engagement à long terme. Vous payez simplement des frais mensuels simples pour chaque nœud Redis que vous utilisez. En déchargeant le trafic des bases de données vers les couches de cache, ElastiCache contribue à réduire la charge de travail sur vos bases de données.
  • Sécurité: ElastiCache est livré avec diverses fonctionnalités de sécurité, notamment le chiffrement en transit et au repos, les politiques de gestion des identités et des accès (IAM) et l’intégration avec Amazon Virtual Private Cloud (VPC), aidant à protéger vos données mises en cache.
  • Compatibilité: ElastiCache est compatible avec une variété de frameworks et de bibliothèques populaires, il est facile à intégrer aux applications existantes.

Cas d’utilisation d’AWS ElastiCache

  • Application de discussion
  • Diffusion multimédia
  • Magasin de sessions
  • Classement des jeux
  • Analyses en temps réel
  • Mise en cache

Déploiement d’AWS ElastiCache à l’aide du modèle CloudFormation

Déployons AWS ElastiCache (Redis Cache) à l’aide de l’outil IaC (AWS CloudFormation)

Étape 1: Créez une pile dans AWS CloudFormation et téléchargez un fichier modèle.

Fichier modèle : dans ce fichier modèle, il y a du code CloudFormation, qui va déployer AWS ElastiCache.

Note: Lien du référentiel pour télécharger le fichier modèle : https://github.com/prafulitankar/AWS-Elasticache

Image 1

Sétape 2 : Mentionnez le nom de la pile et les valeurs des paramètres. Ici, nous avons fourni le nom de la pile CloudFormation (Elasticache-01) et les valeurs des paramètres, qui définissent la configuration du Cluster AWS ElastiCache.

Image 2

Image 3

Étape 3: Une fois que nous avons terminé avec la valeur du paramètre, configurons les options ci-dessous la pile. Fournissez les balises et les autorisations au cluster.

Image 4

Étape 4: configurer les options d’échec de la pile ; ici, nous avons des options d’échec de pile :

  • Préservez les ressources provisionnées avec succès : Lorsque la pile échoue, elle conserve toutes les ressources créées avec succès.
  • Supprimer toutes les ressources nouvellement créées : Une fois la pile échouée, elle doit être restaurée, ce qui signifie qu’elle conserve toutes les anciennes ressources créées précédemment et supprime toutes les nouvelles ressources lors de la restauration.

Image 5

Une fois que nous aurons soumis toutes les informations nécessaires, la pile CloudFormation commencera à créer le cluster AWS ElastiCache.

Désormais, notre cluster AWS ElastiCache est disponible.

Image 8

Comment accéder à AWS ElastiCache

  • Le cluster AWS ElastiCache doit être déployé dans VPC.
  • Le numéro de port 6379 est autorisé dans le groupe de sécurité à partir de l’adresse IP source à partir de laquelle nous accédons au cluster ElastiCache.
  • Pour accéder, le cluster nécessite un point de terminaison principal (master.cluster-test-001.flihgf.use2.cache.amazon.com:6379)

En utilisant AWS ElastiCache, nous pouvons accélérer les performances de notre application en mettant en cache les données dans ElastiCache, qui est rentable, sécurisé et hautement disponible pour réduire la surcharge et la latence de la base de données.






Source link