Che cos'è esattamente Heroku?


135

Ho appena iniziato a studiare Ruby su binari e mi chiedevo cosa fosse realmente Heroku? So che è un cloud che ci aiuta a evitare l'uso dei server? Quando lo usiamo davvero?


7
In parole povere: Heroku ti consente di distribuire applicazioni web spingendo il tuo codice nel loro repository. Heroku gestisce tutto per te.
Bobby,

Posso usarlo per la distribuzione back-end di app mobili? supporta mongoDb?
vikramvi,

Risposte:


198

Heroku è una piattaforma cloud come servizio. Ciò significa che non devi preoccuparti dell'infrastruttura; ti concentri solo sulla tua applicazione.

Oltre a quello che ha detto Jonny , ci sono alcune caratteristiche di Heroku:

  • Distribuzione istantanea con push Git - la compilazione della tua applicazione viene eseguita da Heroku usando i tuoi script di compilazione
  • Molte risorse aggiuntive (applicazioni, database ecc.)
  • Ridimensionamento dei processi: ridimensionamento indipendente per ciascun componente dell'app senza influire sulla funzionalità e sulle prestazioni
  • Isolamento: ogni processo (aka dyno) è completamente isolato l'uno dall'altro
  • Registrazione e visibilità complete: facile accesso a tutti gli output di registrazione da ogni componente della tua app e da ogni processo (dyno)

Heroku fornisce tutorial scritti molto bene che ti permettono di iniziare in pochi minuti. Inoltre forniscono gratuitamente le prime 750 ore di calcolo, il che significa che è possibile avere un processo (aka Dyno) senza alcun costo. Anche le prestazioni sono molto buone, ad esempio una semplice applicazione Web scritta in node.js può gestire circa 60 - 70 richieste al secondo.

I concorrenti di Heroku sono:


69
+1 per menzionare anche che ci sono altri servizi come alternative.
Karl-Johan Sjögren,

6
Voglio solo sapere qual è la differenza tra l'esecuzione di un'app rails sul server web localhost / apache e l'esecuzione dell'app su heroku?
neo1691,

23
Per me, solo leggere l'elenco dei concorrenti mi ha dato una comprensione di ciò che potrebbe essere Heroku.
Codice Poeta,

35
L'elenco dei concorrenti è un po 'fuorviante. La maggior parte dei "concorrenti" nell'elenco offre l'infrastruttura cloud come servizio, mentre Heroku sta vendendo la propria gestione dell'infrastruttura cloud come servizio. Heroku stesso è un cliente di AWS; quando passi a Heroku, la tua app è in istanze AWS. Dire che sono concorrenti è come dire che un wedding planner è in competizione con le sale per banchetti.
Adelmar,


24

È una soluzione server scalabile e basata su cloud che ti consente di gestire facilmente la distribuzione delle tue applicazioni Rails (o di altro tipo) a condizione che ti abboni a una serie di convenzioni (ad esempio Postgres come database, nessuna scrittura nel filesystem).

In questo modo puoi ridimensionare facilmente man mano che la tua applicazione cresce migliorando il tuo database e aumentando il numero di dynos (istanze di Rails) e di lavoratori.

Non ti aiuta a evitare di usare i server, avrai bisogno di una certa comprensione della gestione dei server per eseguire il debug efficacemente dei problemi con la tua combinazione piattaforma / app. Tuttavia, mentre è relativamente costoso (cioè per esempio rispetto al noleggio di una fetta su Slicehost o qualcosa del genere), c'è un account gratuito ed è un grosso compromesso tra se è più conveniente pagare qualcuno per costruire la propria soluzione o prendere la spesa extra.



3

A mio avviso, si tratta di un servizio di web hosting amministrato scalabile, pronto a crescere in ogni senso, quindi non devi preoccuparti.

Non è utile per una normale applicazione web PHP, perché ci sono molti servizi di web hosting con ftp laggiù per un web semplice senza necessità di scalabilità, ma se hai bisogno di qualcosa di più grande Heroku o qualcosa di simile è quello che ti serve.

È esposto come servizio tramite uno strumento da riga di comando in modo da poter scrivere script per automatizzare le distribuzioni. Comunque è abbastanza simile ad altri servizi di web hosting con Git abilitato, ma Heroku lo rende più semplice.

Questa è la cosa, semplificarti le cose di amministrazione, così ti fa risparmiare tempo. Ma non ne sono sicuro, dato che ho appena iniziato!

Una bella introduzione di come funziona nella documentazione ufficiale è:

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


0

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

Heroku è un prodotto PaaS (Platform as a Service) basato su AWS ed è molto diverso da Elastic Compute Cloud. È molto importante differenziare le soluzioni "Infrastruttura come servizio" e "Piattaforma come servizio" quando consideriamo la distribuzione e il supporto della nostra applicazione utilizzando queste due soluzioni.

Heroku è molto più semplice da utilizzare rispetto a AWS Elastic Compute Cloud. Forse è anche troppo semplice. Ma c'è una buona ragione per questa semplicità. La piattaforma Heroku ci fornisce un ambiente di runtime pronto e server delle applicazioni. Inoltre, beneficiamo della perfetta integrazione con vari strumenti di sviluppo, un sistema operativo preinstallato e server ridondanti.

Pertanto, con Heroku, non è necessario pensare alla gestione dell'infrastruttura, a differenza di AWS EC2. Dobbiamo solo scegliere un piano di abbonamento e modificare il nostro piano quando necessario.

Quell'articolo fa un buon lavoro spiegando le differenze tra Heroku e AWS ma sembra che tu possa scegliere altri fornitori di iaas (infrastrutture) diversi da AWS. Quindi alla fine Heroku sembra semplificare il processo di utilizzo di un provider cloud, ma a un costo.

inserisci qui la descrizione dell'immagine

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.