An Interest In:
Web News this Week
- April 1, 2024
- March 31, 2024
- March 30, 2024
- March 29, 2024
- March 28, 2024
- March 27, 2024
- March 26, 2024
June 21, 2021 12:13 am GMT
Original Link: https://dev.to/loboaveces/saas-la-metodologia-de-12-factores-explicada-3ip2
Saas: La metodologa de 12 factores explicada
La metodologa de doce-factores es una metodologa para crear aplicaciones de software como servicio (Saas). Consta de algunas "mejores prcticas" diseadas para permitir que las aplicaciones web se creen con portabilidad y resiliencia.
Para comprender esta metodologa podemos dividir los doce factores en 3 componentes clave:
A continuacin, veremos las mejores prcticas que se debe seguir en cada factor para que nuestra aplicacin cumpla con esta metodologa.
Factores de cdigo:
Factor 1 - Cdigo base:
- Se debe hacer seguimiento a los cambios en el cdigo desden un sistema de control de versiones (VCS) como Github, BitBucket, etc.
- Relacin uno a uno entre el cdigo base y la aplicacin.
- Puede haber mltiples implementaciones de la aplicacin.
- Pueden haber diferentes versiones del cdigo base en cada implementacin.
Factor 5: Compila, publica y ejecuta:
- Build (Compilacin): transforma un cdigo base en una unidad ejecutable llamada build.
- Release (Lanzamiento): Combina el build con la configuracin para que est listo para ejecutarse.
- Ejecucin: ejecuta la aplicacin.
Factor 10 - Paridad Dev/Prod:
- Minimiza las diferencias entre los entornos de implementacin y produccin.
- Los servicios de back-end deben ser los mismos en todos los entornos (dev/prod).
Factores de implementacin:
Factor 2 - Dependencias:
- Ten en cuenta que una aplicacin solo es confiable como su dependencia menos confiable.
- Asegrate de que el cdigo declare explcitamente cualquier dependencia.
Factor 3 - Configuracin:
- La configuracin contiene todo lo que vara entre las implementaciones, como las credenciales y las ubicaciones de los servicios de respaldo.
- Las configuraciones deben mantenerse separadas del cdigo
- Almacena la configuracin en variables de entorno.
Factor 4 - Servicios de back-end:
- Las aplicaciones no deben distinguir entre servicios de back-end locales y de terceros.
- Se debe acceder a todos los servicios mediante URLs y credenciales para que puedan intercambiarse sin cambiar el cdigo.
Factor 6 - Procesos:
- "Stateless" y no comparten nada.
- Los servicios de respaldo almacenan datos persistentes ya que la memoria y los sistemas de archivos no se comparten entre los procesos.
- Los datos se almacenan de forma centralizada.
Factor 7 - Enlace a travs de puertos:
- Exportacin de servicios designando un puerto. HTTP y otros servicios se exportan de esta manera.
- Para vincular un puerto normalmente debe declarar una biblioteca de servidor web.
- Las aplicaciones pueden ser servicios que sean llamadas por otras aplicaciones a travs de la URL y el puerto.
Factor 9 - Desechabilidad:
- Las aplicaciones deben tener un tiempo de inicio de proceso mnimo y un cierre o terminacin de la applicacin eficiente.
- Implementar cdigo y configurar cambios rpidamente.
- Escale aplicaciones fcilmente.
Factor 11 - Registros (logs):
- Las aplicaciones no deben preocuparse por almacenar registros (logs).
- Las aplicaciones deben tener registros de tendencias en forma de un flujo de eventos escrito en stdout.
- El entorno de ejecucin captura el flujo de todas las aplicaciones, agrega los registros y enruta los registros a su destino.
Factores operativos:
Factor 8 - Simultaneidad:
- Se pueden utilizar procesos concurrentes para escalar la aplicacin.
- Los procesos sin estado se pueden activar sin crear dependencias en otros procesos.
Factor 12 - Procesos de administracin:
- Habilite procesos nicos de administracin de aplicaciones, como la migracin de bases de datos.
- Ejecutar contra una versin con la misma configuracin del cdigo base.
- Estn incluidos en el cdigo de la aplicacin.
Fuentes:
- El sitio web de la Metodologa de los Doce Factores: 12factor
Original Link: https://dev.to/loboaveces/saas-la-metodologia-de-12-factores-explicada-3ip2
Share this article:
Tweet
View Full Article
Dev To
An online community for sharing and discovering great ideas, having debates, and making friendsMore About this Source Visit Dev To