Heroku

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 22

Heroku

Es un servicio de Hosting en la nube(los clientes


no tienen que contar con infraestructura, el tiempo
de procesamiento y almacenamiento se le renta a
un tercero)
Gratuito(hasta 5 MB de espacio en disco para
base de datos, 50MB para todos los archivos
incluyendo repositorios Git)
Servicio basados en la nube de Amazon Web
Services(ECS,S3, etc.)
La implementacion se hace a traves de Git
Se instala a traves de un tool propio de Heroku.
Porque usar Heroku?

Olvidate de usar servidores


Enfocate en tu aplicacion
Pagamos cuando este terminada (o nunca!)
Flujo basado en Git

Se usa para hacer la instalacion de la app a


traves de los repositorios
Todo lo que tenemos que hacer es hacerle un
”push” a nuestro codigo a nuestro repositorio en
Heroku
Cuando se hace el ”Push” se compila el codigo
de nuestra app.
Dynos en Heroku
Son servidores ligeros
Instancias individuales de Servidores Web(algo
asi como un Mongrel) pero se pueden distribuir a
varios servidores
4 Dynos equivalen a un CPU
1 dyno en el esquema gratuito
Slug

Es la aplicacion ”compilada”
Maximo 100MB
Workers en Heroku

Es un framework para deployar jobs o tareas


Realizan las tareas en el background
1 trabajo a la vez del Queue
Hacen escalable a la app
0(cero) workers en el esquema gratuito
Que OS utiliza Heroku?

Utiliza Debian y Ruby 1.8.X


Base de Datos

Heroku puede trabajar con MySQL, SQLite,


PostgreSQL, MongoDB, CouchDB y Memcache a
traves de un tercero
Mongo HQ y Cloudant (como add-ons)
Interaccion con la BD

Utiliza los valores de database.yml


Podemos usar migraciones
Hacer un pull a la Base de Datos
Hacer push a la base de datos
Rake en Heroku

Se pueden ejecutar remotamente los comandos


rake
Gems en Heroku

Agregan al archivo .gems


Se instalan al hacer un push
Modo de Mantenimiento

Se usa cuando vamos a subir archivos, hacerle


modificaciones a nuestra app, etc.
Que pasa cuando se satura nuestra app?
Se agregan mas dynos!
Se agregan mas workers!
Finalmente le pagamos a HEROKU.
Frameworks

Rails
Sinatra
Y mas...
Rails 3 en Heroku

Actualmenta en modo Beta


Add-ons en Heroku

Son como plugins para la app


Amazon RDS (Relational Database Service)
Cron (Unix Job Scheduler)
New Relic (monitor de Web Performance)
SSL (https para la app)
Websolr (text search)
etc.
Aplicaciones que corren en Heroku

Best Buy (IdeaX)


Shopify.com
Scrumninja.com
Flightcaster.com
No OK!

La primera peticion puede tardar un poco


No tiene acceso ssh
Sistema de archivos ”Read Only”
Conjuntos predefinidos de OS y Version de Ruby
Para apps grandes el costo se eleva
OK!

Facil! para principiantes


Bajo costo para apps pequeñas
Ofrece manejo sencillo de apps complejas
diseñandolas para el stack de Heroku
Gratis hasta 5MB de BD
Actualizacion de cambios a traves de Git casi
instantaneos
Como empiezo?

Crear cuenta registrandose en Heroku.com


Tener Rails y Git instalados
Instalar el gem de Heroku (gem install heroku)
Crear las llaves SSH y agregarlas a Heroku
Crear la app en Heroku con: heroku create
Fin
”Receta”
(estar dentro del directorio donde esta la app)
heroku create MiAplicacion
heroku open --app MiAplicacion

git init
git remote add heroku [email protected]:MiAplicacion
git remote add MiAplicacion [email protected]:MiAplicacion
------------------------------------------------------------
git add -A
git commit -a -m "inicio de commit de MiAplicacion"
git push [email protected]:MiAplicacion.git master
------------------------------------------------------------
heroku rake db:migrate --app MiAplicacion
heroku db:push --app MiAplicacion

heroku restart --app MiAplicacion

heroku maintenance:on --app MiAplicacion


heroku maintenance:off --app MiAplicacion

También podría gustarte