Infraestructura e introducción
hefesto-server es el elemento principal. Al hacer la instalación, se levantarán 5 contenedores:
- Un nginx que recibe todas las peticiones http, sobre el que podrás crear virtual host automaticamente, con certificados https gratuitos.
- Un php-fpm, para procesar esas peticiones a partir del código de Hefesto y de las APIs que tengas desplegadas.
- Un php-worker, con un supervisor, que mantiene levantados dos Workers que procesan los jobs.
- Un postgres, con las extensiones postgis y pgrouting, en el que podrás almacenar información, y realizar operaciones geoespaciales.
- Un redis, que usa internamente Hefesto para encolar tareas, y cachear información, y que tú también podrás usar como base de datos en RAM.
Totalmente independiente de la instancia de Hefesto, se sitúan los microservicios o APIs:
- hefesto-analysis es un api que nos permite visualizar trazas de logs de otras apis, y obtener analíticas de esos logs, como cuántos 500 han habido en el último día.
- hefesto-jobs nos permite acceder a datos escritos por jobs lanzados desde otras apis, y encolar tareas de forma masiva usando httpDigestion.
- Por último, tú mismo crearás todas las apis que necesites, similares a las dos anteriores.
La última pieza del diagrama es hefesto-client, se trata de un cliente que tendrás en local, y que se encargará de desplegar las apis contra una o varias instancias de hefesto-server localizadas en cualquier servidor.
El desarrollador podrá crear su api, e ir desplegando con el cliente contra una instancia de Hefesto en remoto, por lo que no es necesario que instale hefesto-server en su local.
Una sóla instancia de hefesto, permite albergar n virtual host, esto permite que varios desarrolladores trabajen en la misma api en paralelo contra una misma instancia de hefesto.
Ir a la home