Memorystore pour Redis fournit des métriques côté serveur en temps réel pour surveiller le débit, l'utilisation du processeur et l'utilisation de la mémoire de vos applications clientes. Toutefois, pour les systèmes distribués complexes, les données côté serveur seules ne suffisent pas à expliquer pourquoi une application rencontre une latence élevée.
Les métriques côté client offrent une transparence sur le cycle complet de requête-réponse en mesurant une commande à partir du moment où l'application l'initie jusqu'à ce qu'elle traite la réponse. En capturant ces points de données, vous pouvez déterminer avec précision si la latence provient de la logique de l'application, du chemin réseau ou du serveur Redis.
Fonctionnement des métriques côté client
Les métriques côté client sont capturées par l'instrumentation OpenTelemetry qui s'exécute directement dans la bibliothèque cliente Redis de votre application.
Pour en savoir plus sur OpenTelemetry, consultez le OpenTelemetry OpenTelemetry. Pour en savoir plus sur les bibliothèques clientes Redis qui sont compatibles avec OpenTelemetry, consultez Activer les métriques côté client.
Lorsque votre application cliente exécute une commande, l'instrumentation OpenTelemetry enregistre des codes temporels aux points de données suivants du cycle requête-réponse :
Extraction du pool : temps d'attente de l'application pour une connexion disponible dans le pool de connexions du client (
redis_client_blocking_latency).Délai aller-retour (DAR) : délai d'acheminement réseau et temps d'exécution du serveur pour la commande (
redis_client_rtt).Traitement de l'application : temps que l'application consacre à l'analyse ou à la désérialisation des données après leur arrivée (
redis_application_blocking_latency).
L'instrumentation suit également les métriques suivantes :
Nouvelles tentatives : nombre de nouvelles tentatives de commande déclenchées par la boucle d'intervalle exponentiel du client (
redis_retry_count).Erreurs de connectivité : nombre d'échecs de connexion et de délais avant expiration (
redis_connectivity_error_count).
Tarifs
L'utilisation de métriques personnalisées côté client dans Cloud Monitoring et de traces distribuées dans Cloud Trace est soumise aux critères de tarification suivants :
- Métriques : l'exportation de métriques côté client vers Monitoring à l'aide de l'API Monitoring est soumise à une tarification basée sur le volume, en fonction du nombre d'octets ingérés par Monitoring.
- Traces : l'exportation de traces distribuées vers Trace à l'aide de l' API Trace est soumise à une tarification basée sur le nombre de délais de trace ingérés par Trace.
L'affichage de vos métriques côté client dans l'explorateur de métriques ou de vos traces distribuées dans l'explorateur de traces n'entraîne aucun frais.
Pour en savoir plus et obtenir des exemples détaillés sur les tarifs, consultez Google Cloud Tarifs de l'observabilité.
Étape suivante
- Utilisez des métriques côté client pour résoudre les problèmes de latence élevée.
- Découvrez les métriques côté client disponibles pour Memorystore pour Redis.