Heroku es una plataforma de servicios en la nube (conocidos como PaaS o Platform as a Service) que permite manejar los servidores y sus configuraciones, escalamiento y la administración. Su popularidad ha crecido en los últimos años debido a su facilidad de uso y versatilidad para distintos proyectos.
Heroku es uno de los PaaS más utilizados en la actualidad en entornos empresariales por su fuerte enfoque en resolver el despliegue de una aplicación. En otras palabras, a Heroku solo le dices qué lenguaje de backend estás utilizando o qué base de datos vas a utilizar y te preocupas únicamente por el desarrollo de tu aplicación.
Si en tu día a día te encuentras desarrollando apps, debes ser consciente que el impacto inicia cuando comienzas a tener usuarios, por esto es importante lanzar tu aplicación sin tener complicaciones de infraestructura, administrar servidores, tus bases de datos y la seguridad que estos deben de tener entre otras cosas.
En el mercado existen una serie de alternativas conocidas como PaaS (Platform as a Service) o “Plataformas como Servicios” que, además de ser la evolución de las IaaS (Infraestructura como Servicio), como EC2 de Amazon donde te dan un servidor y tu te encargas de provisionarlos y administrarlos con PaaS, te puedes olvidar de todas estas cuestiones de administración, pues utilizas directamente una plataforma que lo hace por ti.
Si este tema te interesa pronto lanzaremos un curso para que tú puedas crear tus propios PaaS utilizando Microsoft Azure.
Heroku tiene su clientela bien definida: empresas que quieren dejar de preocuparse por cuestiones de infraestructura y sólo enfocarse en el desarrollo. Por lo general estas suelen ser empresas grandes o startups que prefieren no invertir en un equipo de operaciones cuando están en una etapa temprana, y su prioridad debe ser hacer un producto que las personas quieran.
Heroku tiene dos tiers, o niveles, para personas interesadas en aprender: una versión gratuita similar a la de now.sh, que entra en modo “sleep” cada 30 minutos sin tráfico, y otra de 7 USD que compite con el servicio básico de 5 USD al mes que ofrece Digital Ocean, pero agregar las ventajas de que nuestros servidores sean administrados por nosotros.
Antes de empezar a entender completamente los beneficios que presenta Heroku, es importante conocer la historia detrás de la computación en la nube y dónde encaja Heroku.
La computación en la nube es un paradigma de la tecnología de la información. Es un modelo que permite el acceso a grupos compartidos de recursos configurables de forma ininterrumpida, tales como redes de computadoras, servidores, almacenamiento, aplicaciones y otros servicios.
Los servicios en la nube pueden suministrarse rápidamente con un mínimo esfuerzo de gestión por parte de la empresa, pues la logística de la a dministración de estos servicios está distribuida y funciona desde internet. La nube es una opción atractiva para las empresas con diversas necesidades. Sin embargo, las particularidades del modelo de negocio y las necesidades de cada proyecto determinarán qué proveedor de servicios en la nube será más óptimo para lo que necesitas en tu empresa.
Heroku, una solución de plataforma como servicio, es generalmente fácil de usar. Pero es más beneficiosa para las empresas en situaciones específicas. Heroku tiene un modelo de servicio gratuito para proyectos pequeños. Además, existen paquetes de servicios escalonados para los casos en los que hay que atender necesidades empresariales más complejas.
Las arquitecturas orientadas a servicios son la esencia de la computación en nube y pueden separarse por su finalidad.
Las categorías más destacadas son la infraestructura como servicio (IaaS), la plataforma como servicio (PaaS) y el software como servicio (SaaS). Conoce qué son las IaaS y PaaS.
Las arquitecturas IaaS proporcionan almacenamiento, redes, potencia de cálculo y otros recursos informáticos de base donde los usuarios del servicio pueden desplegar y ejecutar software arbitrario. El software puede incluir sistemas operativos (SO) y aplicaciones.
En este modelo, los usuarios no gestionan ni controlan la infraestructura subyacente de la nube. En cambio, tienen el control sobre los sistemas operativos, el almacenamiento, las aplicaciones desplegadas y, posiblemente, algunas piezas de los componentes de red.
Ejemplos de arquitecturas IaaS son Amazon Web Services y Microsoft Azure.
Lee también: Ventajas y desventajas en la nube
¿Te gustaría aprender más sobre Heroku? ¿Utilizas alguna otra opción para subir tus proyectos a la nube? ¿Cómo manejan la infraestructura en la empresa donde trabajas? Cuéntame en los comentarios de este post y platiquemos sobre infraestructura. Para empezar a usar de mejor manera Heroku y otras plataformas, puedes seguir nuestro Curso de Introducción al Despliegue de Aplicaciones. Explora nuestros cursos de AWS.
Tengo una pregunta: ¿Existe alguna diferencia entre Heroku y Netify? ¿Netify hace lo mismo o es un tema completamente distinto?
Deberían actualizar el curso de heroku me parece una buena alternativa para despliegue de aplicaciones. saludos
Ricardo que miras al cielo,… me puedes decir por favor, que es el buildpack,? y para que sirve?. Al intentar hacer el deply en heroku me reclama eso del buildpack,… alli ademas hya unas cajita y dentro dice “master” y al lado un boton “deply branch”,… ¿como subo mi proyecto de prueba usando Mysql?
¿Se pueden subir apps “cerradas”?
Nunca pares de Aprender!! Yeah!!
Han despertado mi interes en estas tecnologias.
¿Heroku permite crear bases de datos en su version gratuita?
En estos momentos estoy usando heroku para el deploy de un sistema, pero no se si es recomendable usarlo para produccion. Que me recomiendan?.. Y gracias
hola yo conozco algunas cosas en html, css y javascript, también sobre django y otras cosillas con mysql; quería saber si aprendo django con todo lo anterior ya estoy listo para trabajar un sitio web
Claro que si
Hola! En mi empresa actualmente se utilizan recursos EC2 donde están desplegadas las aplicaciones de producción y utilizamos Azure para hacer despliegue continuo al ambiente de pruebas. Sin embargo esta forma me parece muy interesante y me gustaría aprender sobre ello apra trabajar en proyectos personales!
Hola quiero aprender más de Heroku!
Hola,quisiera saber que capacidad de almacenamiento web maneja heroku en el modelo gratis.
Que tal, hay alguna restriccion sobre el numero de deploys al dia ??