2016-09-23 1 views
1

J'ai actuellement une application node.js déployée sur un site web Dyno fonctionnant sur Heroku. Au moment de planifier la production, je dois envisager une solution de redondance et de basculement à un coût raisonnable. Comme j'ai couru "Vérification de la production" sur le tableau de bord Heroku, il m'a donné une liste de choses à faire pour en faire la production. L'une des choses est la "redondance Dyno" que je devrais avoir au moins 2 dynos web en cours d'exécution pour le basculement. Cela signifie-t-il que je devrais mettre à jour mon Free Dyno vers Hobby ou Standart 1X, et devrais-je aussi avoir deux dyno du même type, par exemple. deux dynos Hobby ou deux dynos Standard 1X?Solution de redondance serveur (basculement) pour l'application Heroku

Comment Heroku gère-t-il le basculement d'un Dyno vers un autre?

Merci!

Répondre

1

Heroku partage le trafic entre tous les dynos disponibles, en répartissant les demandes en utilisant un random assignment algorithm. Donc, tous vos dynos seront toujours au service du trafic entrant.

Ceci fournit une redondance et non un basculement. Si un dyno s'étrangle sur une requête très lente, l'application sera toujours disponible via les autres dynos.

Le basculement est différent. En cas d'échec de l'application (disons, la base de données est inaccessible), le routeur d'Heroku offre peu d'aide. Pour faire face à des charges de travail plus industrielles, vous pouvez utiliser Amazon Route 53's DNS-level failover, qui exécute une vérification d'intégrité par rapport au backend et redirigera le nom de domaine dans le cas d'un crash Heroku. Toutefois, pour de nombreux cas d'utilisation, il suffit probablement de proposer une page d'erreur HTTP 503 conviviale et personnalisée, que vous pouvez configurer dans Heroku, pour que les utilisateurs restent satisfaits pendant une panne.