Qu'est-ce que Heroku exactement?


135

Je viens de commencer à apprendre Ruby sur rails et je me demandais ce qu'était vraiment Heroku? Je sais que c'est un cloud qui nous aide à éviter d'utiliser des serveurs? Quand l'utilisons-nous réellement?


7
Dans les termes les plus simples: Heroku vous permet de déployer des applications Web en poussant votre code vers leur dépôt. Heroku s'occupe de tout pour vous.
Bobby

Puis-je l'utiliser pour le déploiement du backend d'applications mobiles? prend-il en charge mongoDb?
vikramvi le

Réponses:


198

Heroku est une plateforme cloud en tant que service. Cela signifie que vous n'avez pas à vous soucier de l'infrastructure; vous vous concentrez simplement sur votre application.

En plus de ce que Jonny a dit , il y a quelques fonctionnalités d'Heroku:

  • Déploiement instantané avec Git push - la construction de votre application est effectuée par Heroku à l'aide de vos scripts de construction
  • De nombreuses ressources complémentaires (applications, bases de données, etc.)
  • Mise à l'échelle des processus - mise à l'échelle indépendante pour chaque composant de votre application sans affecter les fonctionnalités et les performances
  • Isolation - chaque processus (aka dyno) est complètement isolé les uns des autres
  • Journalisation et visibilité complètes - accès facile à toutes les sorties de journalisation de chaque composant de votre application et de chaque processus (dyno)

Heroku fournit un tutoriel très bien écrit qui vous permet de démarrer en quelques minutes. En outre, ils fournissent gratuitement les 750 premières heures de calcul, ce qui signifie que vous pouvez avoir un processus (aka Dyno) sans frais. Les performances sont également très bonnes, par exemple une application Web simple écrite en node.js peut gérer environ 60 à 70 requêtes par seconde.

Les concurrents Heroku sont:


69
+1 pour avoir également mentionné qu'il existe d'autres services comme alternatives.
Karl-Johan Sjögren

6
Je veux juste savoir quelle est la différence entre exécuter une application rails sur le serveur Web localhost / apache et exécuter l'application sur heroku?
neo1691

23
Pour moi, la simple lecture de la liste des concurrents m'a permis de comprendre ce que pouvait être Heroku.
Code Poet

35
La liste des concurrents est un peu trompeuse. La plupart des «concurrents» de la liste proposent une infrastructure cloud en tant que service, tandis que Heroku vend leur gestion de l'infrastructure cloud en tant que service. Heroku lui-même est un client d'AWS; lorsque vous poussez vers Heroku, votre application est assise sur des instances AWS. Dire qu'ils sont des concurrents, c'est comme dire qu'un organisateur de mariage est en concurrence avec les salles de banquet.
Adelmar le


24

C'est une solution serveur évolutive basée sur le cloud qui vous permet de gérer facilement le déploiement de vos applications Rails (ou autres) à condition de vous abonner à un certain nombre de conventions (par exemple Postgres comme base de données, pas d'écriture sur le système de fichiers).

Ainsi, vous pouvez facilement évoluer au fur et à mesure que votre application se développe en améliorant votre base de données et en augmentant le nombre de dynos (instances Rails) et de workers.

Cela ne vous aide pas à éviter d'utiliser des serveurs, vous aurez besoin d'une certaine compréhension de la gestion des serveurs pour déboguer efficacement les problèmes avec votre combinaison plate-forme / application. Cependant, bien que cela soit comparativement cher (c'est-à-dire par instance par rapport à la location d'une tranche sur Slicehost ou quelque chose du genre), il existe un compte gratuit et c'est un compromis approximatif entre le fait qu'il soit plus rentable de payer quelqu'un pour créer votre propre solution ou prendre la dépense supplémentaire.



3

À mon avis, il s'agit d'un service d'hébergement Web administré évolutif, prêt à évoluer dans tous les sens pour que vous n'ayez pas à vous en soucier.

Ce n'est pas utile pour une application Web PHP normale, car il existe de nombreux services d'hébergement Web avec ftp pour un site Web simple sans besoin d'évolutivité, mais si vous avez besoin de quelque chose de plus grand, Heroku ou quelque chose de similaire, c'est ce dont vous avez besoin.

Il est exposé en tant que service via un outil de ligne de commande afin que vous puissiez écrire des scripts pour automatiser vos déploiements. Quoi qu'il en soit, il est assez similaire à d'autres services d'hébergement Web avec Git activé, mais Heroku le rend plus simple.

C'est son truc, pour vous simplifier les tâches administratives, pour vous faire gagner du temps. Mais je ne suis pas sûr, car je ne fais que commencer par ça!

Une belle introduction de son fonctionnement dans la documentation officielle est:

https://devcenter.heroku.com/articles/how-heroku-works


0

Par DZone: https://dzone.com/articles/heroku-or-amazon-web-services-which-is-best-for-your-startup

Heroku est un produit de plate-forme en tant que service (PaaS) basé sur AWS et est très différent d'Elastic Compute Cloud. Il est très important de différencier les solutions «Infrastructure en tant que service» et «Plateforme en tant que service» lorsque nous envisageons de déployer et de prendre en charge notre application à l'aide de ces deux solutions.

Heroku est bien plus simple à utiliser qu'AWS Elastic Compute Cloud. C'est peut-être même trop simple. Mais il y a une bonne raison à cette simplicité. La plate-forme Heroku nous équipe d'un environnement d'exécution et de serveurs d'applications prêts à l'emploi. De plus, nous bénéficions d'une intégration transparente avec divers instruments de développement, un système d'exploitation préinstallé et des serveurs redondants.

Par conséquent, avec Heroku, nous n'avons pas besoin de penser à la gestion de l'infrastructure, contrairement à AWS EC2. Il nous suffit de choisir un plan d'abonnement et de modifier notre plan si nécessaire.

Cet article explique bien les différences entre Heroku et AWS, mais il semble que vous puissiez choisir d'autres fournisseurs iaas (infrastructure) autres qu'AWS. Donc, en fin de compte, Heroku semble simplement simplifier le processus d'utilisation d'un fournisseur de cloud, mais à un coût.

entrez la description de l'image ici

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.