View
20.634
Download
0
Category
Preview:
Citation preview
Heroku
Que es?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 gem
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 slug de nuestra app
Arquitectura
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 delayed jobs
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!
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 appAmazon 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 pequeas
Ofrece manejo sencillo de apps complejas diseandolas 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 MiAplicacionheroku open --app MiAplicacion
git initgit remote add heroku git@heroku.com:MiAplicaciongit remote add MiAplicacion git@heroku.com:MiAplicacion------------------------------------------------------------git add -Agit commit -a -m "inicio de commit de MiAplicacion"git push git@heroku.com:MiAplicacion.git master------------------------------------------------------------heroku rake db:migrate --app MiAplicacionheroku db:push --app MiAplicacion
heroku restart --app MiAplicacion
heroku maintenance:on --app MiAplicacionheroku maintenance:off --app MiAplicacion
Muokkaa otsikon tekstimuotoa napsauttamalla
Muokkaa jsennyksen tekstimuotoa napsauttamallaToinen jsennystasoKolmas jsennystasoNeljs jsennystasoViides jsennystasoKuudes jsennystasoSeitsems jsennystasoKahdeksas jsennystasoYhdekss jsennystaso
Recommended