En l’entrada anterior us parlàvem sobre la computació al núvol, i donant un detall sobre les capacitats de Amazon WS. Avui us parlarem sobre Heroku, una companyia que s’encarrega de publicar les nostres aplicacions web al núvol. Així ens permet publicar les nostres aplicacions escrites amb Ruby, Node.js, Clojure, Java, Python, and Scala.
Una de les característiques més interessants de heroku és la facilitat en que podem realitzar actualitzacions de les noves funcionalitats de la nostra aplicació. Per garantir això, heroku lliga el nostre projecte amb un sistema de control de versions, concretament amb git, i ens crea una nova rama remota. Cada vegada que publiquem nou codi a aquesta rama remota, heroku s’encarrega d’actualitzar el nostre entorn de producció de forma automàtica, provocant que el nou codi es posi en funcionament amb els nous servidors i evitant-nos els maldecaps de tenir que realitzar les actualitzacions de forma manual. Així, realitzar una actualització es tan fàcil com teclejar la següent comanda:
git push heroku master
Heroku també esta pensat per mantenir la escalabilitat de les nostres aplicacions i ens permet afegir nous processos amb uns pocs clicks. Heroku actualment suporta dos tipus diferents de processos: els anomenats dynos (encarregats de servir peticions web) i els workers (encarregats de realtizar altres tasques no especifiques d’un servidor web). L’aplicació s’encarrega de reiniciar els nostres processos en el cas de que es produeixi algun error així com d’aturar els nostres processos quan aquestos han estat inactius més d’una hora i engegar-los quan arriba una nova petició per a ells.
A part de tot això heroku també permet integrar el nostre servei web amb altres plugins, que proporcion capacitats addicionals a les nostres aplicacions. Així podem trobar plugins per a les següents tecnologies:
- Bases de dades dedicades. (MySQL, PostreSQL, Redis,MongoDB, i moltes més)
- Memcached
- Processament de tasques de forma períodica (Cron)
- Full Text Search (Sphinx)
- Correu electrònic
- Enviament de missatges de texte (SMS)
- Gestió de certificats (Https)
- i moltes més (llista complerta)
Cal tenir en compte que podeu provar heroku de forma gratuïta, ja que ofereixen una base de dades de 5MB (compartida) i 750 hores de processament (un proces mensual) de forma gratuïta.