Comparatif AWS Beanstalk vs Heroku
Publié le
Do not index
Do not index
Primary Keyword
Lié à Analyse sémantique (Articles liés) 1
Lié à Analyse sémantique (Articles liés)
Statut rédaction
A optimiser SEO
Lié à Analyse sémantique (Articles liés) 2
Introduction
Amazon beanstalk et Heroku sont deux services cloud couramment utilisés qui nous permettent de déployer, surveiller et faire évoluer des applications Web et mobiles.
Ces deux services fournissent des ressources de cloud computing et sont parfaits pour lâhĂ©bergement dâapplications.
La question qui se pose, est quelle solution choisir selon pour ma problématique qui convient le mieux à mes besoins métiers.
Cet article va donc vous expliquer les forces et les faiblesses des deux solutions afin que vous puissiez par la suite plus facilement faire un choix.
Plongeons-nous dans les fonctionnalitĂ©s dâAWS et Heroku â et considĂ©rons les solutions clĂ©s quâils offrent â pour trouver votre meilleure option!
AWS Elastic Beanstalk
AWS Elastic Beanstalk est le service PaaS dâAWS. Il permet de dĂ©ployer et mettre Ă lâĂ©chelle des applications et services Web dĂ©veloppĂ©s dans divers langage (Java, .NET, PHP, Node.js, Python, Ruby, Go)
En utilisant cette solution vous serez amenĂ© Ă charger votre code via git ou archive afin quâElastic Beanstalk effectue automatiquement les Ă©tapes du dĂ©ploiement, le dimensionnement des capacitĂ©s, lâĂ©quilibrage de la charge, le dimensionnement automatique et la surveillance de lâĂ©tat de lâapplication.
Ce faisant, vous conservez la maßtrise totale des ressources AWS alimentant votre application et pouvez accéder aux ressources sous-jacentes à tout moment.
Il nâest gĂ©nĂ©ralement pas nĂ©cessaire de configurer le provisionnement de capacitĂ©, lâĂ©quilibrage de charge ou la mise Ă lâĂ©chelle, bien que vous puissiez toujours accĂ©der Ă lâinfrastructure et si nĂ©cessaire enregistrer plusieurs options de configuration pour votre application.
Elastic Beanstalk utilise des instances EC2 pour héberger votre application vous serez donc facturé en fonction des instances provisionnés.
Heroku
Heroku une solution PaaS basĂ© sur du AWS. Elle offre aussi la possibilitĂ© de dĂ©ployer et mettre Ă lâĂ©chelle ses applications dans les langages suivants (Ruby, Python, PHP, Clojure, Go, Java, Scala, and Node.js apps).
Cette solution est légÚrement différente dans son utilisation, en effet, il faudra passer par le terminal et push votre application directement sur heroku via git.
AprĂšs cela, la magie opĂšre, vous nâavez plus rien Ă vous prĂ©occuper. Votre application, les certificats, le support et le CI/CD sont totalement gĂ©rĂ©s par la plateforme.
Si vos besoins augmentent, vous devrez toutefois notifier Heroku pour augmenter votre niveau de service (et donc votre facture). Tout cela se fait en une commande et ne demande aucune connaissance technique particuliĂšre.
Heroku sâoccupe commodĂ©ment des dĂ©tails. Ainsi, vous pouvez consacrer tous vos efforts au dĂ©veloppement dâapplications. Vous nâavez besoin que dâun dĂ©veloppeur Web â ou de plusieurs dĂ©veloppeurs â pour crĂ©er une application et la pousser vers Heroku en utilisant Git. Toute la gestion se fait via lâinterface de ligne de commande ou dans le tableau de bord.
Quand choisir Aws Elastic Beanstalk ou Heroku ?
Si vous ĂȘtes Ă lâĂ©tat de conception, je vous conseille Heroku.
Heroku est beaucoup plus simple Ă utiliser quâAWS Elastic Beanstalk. Vous nâavez pas besoin de penser Ă la gestion de lâinfrastructure, contrairement Ă AWS beanstalk ou vous pouvez ĂȘtre amenĂ© Ă faire quelques modifications.
Heroku est génial pour les projets ou vous avez besoin de livrer le plus vite possible (POC, MVP). Le forfait gratuit suffira généralement à répondre à vos besoins.
Ă partir du moment ou vous commencez Ă avoir beaucoup de trafic, Heroku deviendra rapidement cher voir trĂšs cher. Le plus petit plan est Ă 7⏠/ mois, mais vous nâobtenez que 512 Mo de RAM.
TrĂšs rapidement, vous devrez passer au plan professionnel avec plusieurs dynos Standard (25 $ â 50 $ / dyno / mois) ou mĂȘme Performance (250 $ â 500 $ / dyno / mois). Un dyno Ă©tant lâĂ©quivalent dâun petit container contenant votre application (un seul suffit rarement).
Câest pourquoi, si votre application consomme beaucoup de ressources (>4-8Go RAM) il peut ĂȘtre intĂ©ressant dâutiliser AWS Elastic Beanstack.
Le risque pour vous, sera de savoir gĂ©rer le support. Aws Elastic Beanstalk Ă©tant dĂ©ployĂ© de sorte Ă Ă©viter les incidents, le risque de rencontrer un problĂšme est faible. Cependant, en cas de problĂšme si vous nâavez pas les compĂ©tences dans votre entreprises, vous devrez faire appel Ă un consultant et dans cette situation vos coĂ»ts explosent (700âŹ/j pour un expert AWS Ă Paris).
Conclusion
Lors du choix entre AWS et Heroku, vous devez principalement tenir compte des coĂ»ts. La gestion de lâinfrastructure vous coĂ»tera-t-elle moins cher, ou est-il rentable de rĂ©pondre sur une plate-forme prĂȘte (mais quelque peu coĂ»teuse) qui gĂšre votre infrastructure pour vous ?
Pour un projet court et simple, Heroku est probablement ce dont vous avez besoin, mais gardez Ă lâesprit que la mise Ă lâĂ©chelle coĂ»te cher. Si votre application est fortement utilisĂ© il est probablement prĂ©fĂ©rable dâutiliser AWS, dâautant plus quâElastic Beanstalk vous aide beaucoup dans la configuration.
En rĂ©sumĂ©, je vous recommande dâutiliser AWS Elastic Beanstalk lorsque:
- Vous avez besoin dâune flexibilitĂ© dâinfrastructure dĂšs le premier dĂ©ploiement de votre application.
- Vous pouvez vous permettre un ingĂ©nieur DevOps ou plusieurs ingĂ©nieurs DevOps pour gĂ©rer lâinfrastructure.
- Vous ĂȘtes prĂȘt Ă consacrer plus de temps au dĂ©ploiement de nouvelles versions de votre application.
- Votre projet nécessite de grandes ressources informatiques.
Et je vous recommande dâutiliser Heroku lorsque:
- Vous devez déployer et tester un produit minimum viable.
- Vous devez améliorer votre application rapidement aprÚs avoir reçu les commentaires des utilisateurs.
- Vous ne pouvez pas vous permettre un ingénieur (ou des ingénieurs) DevOps.
- Votre projet nâexige pas autant de ressources de calcul.
Si vous choisissez Amazon Web Services, il est important de vous assurer que lâentreprise avec laquelle vous travaillez possĂšde une expĂ©rience de la gestion de lâinfrastructure AWS.
Â
Ăcrit par

Kévin Didelot
KĂ©vin est notre super expert DevSecOps et le fondateur de Keltio đšđ»âđ»Â