Comment puis-je corriger les erreurs HTTP 5xx dans Amazon Keyspaces ?

Lecture de 3 minute(s)
0

Je souhaite corriger les erreurs HTTP 5xx dans Amazon Keyspaces (pour Apache Cassandra).

Résolution

Vous obtenez une erreur 5xx lorsque vous effectuez des opérations de table dans Amazon Keyspaces si des problèmes transitoires comme des pannes de réseau ou des défaillances matérielles du backend surviennent.

Si vous obtenez le message d'erreur Service non disponible, consultez le Tableau de bord AWS Health. Vérifiez qu'aucun événement n'affecte votre compte AWS pour cette région AWS spécifique. Vous pouvez également contacter AWS Support pour Amazon Keyspaces afin de vérifier que le service est sain et accessible.

Pour résoudre une défaillance de l'API Amazon Keyspaces résultant d'une erreur système, consultez les journaux AWS CloudTrail. Tentez à nouveau d'effectuer l'opération du plan de contrôle.

Une exception de type InternalServerError peut survenir lorsque vous migrez vos données ou effectuez un grand nombre d'activités d'écriture. Amazon Keyspaces adapte automatiquement les partitions de stockage sous-jacentes de votre table. Le nombre de partitions augmente en fonction de l'évolution du trafic de votre application ou de la capacité allouée. Les partitions peuvent être divisées à la suite d'une modification de la charge globale du trafic de votre table ou de la charge sur une partition individuelle. Une erreur système peut alors survenir si des opérations de lecture ou d'écriture tentent d'atteindre la partition divisée. Pour résoudre ce problème, vous devez créer la métrique Erreurs système pour votre table. Choisissez Somme pour les statistiques et 1 minute pour la période. Pour en savoir plus, reportez-vous à Métriques et dimensions dans Amazon Keyspaces.

Pour résoudre les erreurs système liées aux opérations de lecture et d'écriture, vous devez activer un mécanisme de journalisation côté application ou côté client. Dans le cas de demandes échouant avec un code d'erreur 5xx, implémentez une stratégie de nouvelle tentative à l'aide d'un algorithme qui utilise un délai de backoff exponentiel.

  • Si vous utilisez un pilote Apache Cassandra pour votre application Java, ajoutez advanced.retry-policy à la configuration de votre pilote pour activer les nouvelles tentatives. Vous pouvez ajouter cette stratégie de nouvelle tentative au fichier application.conf.
  • Si votre application s'exécute sur Python, vous pouvez intégrer KeyspacesRetryPolicy à votre solution pour déclencher une nouvelle tentative pour chaque erreur côté serveur. Pour en savoir plus, reportez-vous à amazon-keyspaces-examples dans le référentiel AWS Samples sur GitHub.

Les erreurs internes du serveur sont généralement transitoires et seront résolues par le service Amazon Keyspaces après un certain temps. Toutefois, si le nombre d'exceptions InternalServerError dépasse le nombre de demandes réussies, contactez AWS Support en indiquant les éléments suivants :

  • Nom de l'espace clé
  • Nom de la table
  • Région
  • Heure de début du problème
  • Informations indiquant si le problème est périodique ou intermittent
  • Pilote client et journaux d'applications
AWS OFFICIEL
AWS OFFICIELA mis à jour il y a 7 mois