Čo je Heroku?
Heroku je cloudová platforma ako služba (PaaS), ktorá umožňuje vývojárom nasadzovať, spravovať a škálovať aplikácie bez starostí o infraštruktúru. Heroku podporuje jazyky ako Node.js, Python, Java, Ruby a Go. Od roku 2010 je súčasťou spoločnosti Salesforce.
Definícia Heroku
Čo je Heroku
Heroku je jedna z najstarších a najznámejších PaaS (Platform as a Service) platforiem. Bola založená v roku 2007 pôvodne len pre Ruby on Rails aplikácie. V roku 2010 ju kúpil Salesforce a rozšíril podporu na ďalšie programovacie jazyky.
Ako Heroku funguje
Heroku abstrahuje celú infraštruktúru do jednoduchých konceptov:
- Dynos — ľahké kontajnery, v ktorých beží aplikácia
- Buildpacks — automatická detekcia jazyka a zostavenie aplikácie
- Add-ons — marketplace s databázami, cache, monitoringom a ďalšími službami
- Heroku Postgres — spravovaná PostgreSQL databáza
- Pipeline — staging a produkčné prostredie s review apps
Heroku bolo priekopníkom myšlienky „git push to deploy" — nasadenie aplikácie jedným príkazom. Hoci v roku 2022 Heroku zrušilo bezplatný plán, zostáva populárnou voľbou pre rýchle prototypovanie a menšie aplikácie vďaka svojej jednoduchosti. Podporuje Node.js, Python, Java, Ruby, PHP, Go a Scala.
Praktický príklad
Príklad: Vývojár vytvorí REST API v Pythone (Flask) a potrebuje ho rýchlo nasadiť online na demoštráciu klientovi.
Vytvorí Procfile s jedným riadkom: web: gunicorn app:app. Pridá Heroku Postgres add-on pre databázu. Zadá git push heroku main a do 2 minút má API bežiace na verejnej URL. Žiadna konfigurácia serverov, žiadne Docker súbory.
Často kladené otázky
Čo je Heroku?
Heroku je cloudová PaaS platforma, ktorá umožňuje nasadzovať webové aplikácie bez správy serverov. Stačí pushnúť kód cez Git a Heroku sa postará o zostavenie, nasadenie a škálovanie.
Je Heroku stále zadarmo?
Od novembra 2022 Heroku zrušilo bezplatný plán. Najlacnejší plán (Eco) stojí 5 $ mesačne za 1 000 dyno hodín. Pre profesionálne nasadenia sú dostupné Production plány.
Aký je rozdiel medzi Heroku a AWS?
Heroku je PaaS — abstrahuje infraštruktúru a umožňuje rýchle nasadenie bez DevOps znalostí. AWS je IaaS/PaaS s oveľa väčšou flexibilitou, ale vyžaduje viac konfigurácie. Heroku v skutočnosti beží na infraštruktúre AWS.
Aké jazyky Heroku podporuje?
Heroku natívne podporuje Node.js, Python, Java, Ruby, PHP, Go a Scala. Pomocou custom buildpackov je možné nasadiť prakticky akýkoľvek jazyk vrátane Rust, Elixir alebo C++.
Súvisiace pojmy
Potrebujete pomôcť s webom?
Napíšte mi a poradím vám s vaším projektom. Prvá konzultácia je zadarmo a nezáväzná.