Guía de plataformas para desplegar tu código

Fuentes: The platforms that ship your code, mapped on one page.

Este recurso, "The platforms that ship your code, mapped on one page," ofrece una visión general exhaustiva de las diversas plataformas disponibles para desplegar y gestionar aplicaciones, categorizándolas en seis grupos principales. En esencia, estas plataformas facilitan el proceso de llevar tu código desde el desarrollo hasta la producción, automatizando tareas como la compilación, el despliegue, el escalado y la monitorización. Esto es crucial en el desarrollo moderno de software, ya que permite a los equipos iterar rápidamente, liberar nuevas funcionalidades con mayor frecuencia y centrarse en la lógica de negocio en lugar de la infraestructura.

El documento divide las plataformas en: PaaS/CaaS (Plataforma como Servicio/Contenedor como Servicio), que ofrecen entornos gestionados para ejecutar aplicaciones; Sandboxes & Harnesses (Cajas de arena y arneses), que proporcionan entornos de ejecución temporales para pruebas y desarrollo; Jamstack, enfocado en la entrega de contenido estático y CDN; Red de Entrega de Aplicaciones, que optimiza la distribución de código a nivel global; PaaS auto-alojado, que te permite ejecutar una plataforma PaaS en tu propia infraestructura (ya sea en la nube o en servidores propios); y IDE en la nube y espacios de trabajo para desarrolladores, que proporcionan entornos de desarrollo basados en navegador. Dentro de cada categoría, se listan numerosas plataformas, desde opciones populares como Heroku, Google Cloud App Engine y AWS App Runner, hasta alternativas más especializadas y de código abierto como Dokku, Flynn y OpenFaaS.

¿Para quién es útil esto? Desarrolladores, equipos de DevOps, arquitectos de software y cualquier persona involucrada en el despliegue y la gestión de aplicaciones. Permite comparar rápidamente diferentes opciones, identificar nuevas herramientas y entender el panorama de plataformas disponibles. Por ejemplo, un desarrollador que busca una solución simple para desplegar una aplicación web podría considerar Heroku o DigitalOcean App Platform. Un equipo que necesita un control total sobre su infraestructura podría optar por una plataforma Self-Hosted PaaS como Cloud Foundry o OpenFaaS. Un equipo que busca un entorno de desarrollo colaborativo podría explorar Gitpod o Replit.

Consideraciones: La elección de la plataforma adecuada depende de varios factores, incluyendo el tamaño del equipo, el presupuesto, los requisitos de rendimiento, la necesidad de control sobre la infraestructura y la familiaridad con las diferentes tecnologías. Algunas plataformas son más adecuadas para proyectos pequeños, mientras que otras están diseñadas para empresas con necesidades más complejas. Además, algunas plataformas pueden tener limitaciones en cuanto a los lenguajes de programación o las tecnologías soportadas. Es importante investigar a fondo cada opción antes de tomar una decisión.