Conceptos fundamentales

Terminología y conceptos fundamentales para utilizar Architecto

Comprender estos conceptos le ayudará a trabajar con Architecto de forma más eficaz.

Terminología de arquitectura

Topología

Es la representación visual de toda la infraestructura de nube y de cómo interactúan sus componentes. En Architecto es un grafo dirigido: los nodos representan componentes y las aristas, flujos de datos.

Nodo

Un componente individual de la topología. Los nodos representan servicios de nube:

  • Cómputo: EC2, Lambda, ECS, App Engine.
  • Almacenamiento: S3, EBS, RDS, DynamoDB.
  • Red: VPC, balanceador de carga, CloudFront, Route 53.
  • Mensajería: SQS, SNS, Kafka, RabbitMQ.
  • Analítica: Redshift, BigQuery, Snowflake.

Flujo

Una conexión entre dos nodos que representa el movimiento de datos:

  • Flujos síncronos: solicitudes y respuestas en tiempo real, como REST API, gRPC o consultas.
  • Flujos asíncronos: mensajería basada en eventos, como SQS, Kafka o webhooks.
  • Flujos de procesamiento de datos: procesos por lotes programados, como ETL o copias de seguridad.

Componente

Un grupo de nodos relacionados con una función concreta, como «capa de base de datos», «nivel de API» o «proceso de aprendizaje automático».

Perfil

Configuración predefinida para un proveedor que incluye:

  • Catálogo de servicios disponibles.
  • Precios por unidad.
  • Disponibilidad regional.
  • Funciones específicas del proveedor.

Architecto incluye perfiles de AWS, GCP, Azure, Kubernetes y Docker.

Propiedades de la arquitectura

Disponibilidad

La resistencia de la arquitectura ante fallos:

  • Una AZ: componentes en una zona; rápido y económico, pero arriesgado.
  • Multi-AZ: componentes replicados entre zonas; más lento y costoso, pero resistente.
  • Multirregión: replicación geográfica; máxima resiliencia y costo.

Escalabilidad

Cómo responde la arquitectura al aumento de carga:

  • Escalado vertical: instancias mayores, limitado por el hardware.
  • Escalado horizontal: más instancias tras un balanceador; sin ese límite y con mayor complejidad.
  • Escalado automático: añade o retira instancias según la carga para optimizar la eficiencia.

Costo

Las implicaciones económicas:

  • Costos fijos: independientes del uso, como reservas o contratos.
  • Costos variables: crecen con el uso, como cómputo por hora o almacenamiento por GB.
  • Costos de salida: transferencia de datos fuera del proveedor.

Seguridad

Protección contra ataques y acceso no autorizado:

  • Autenticación: comprueba la identidad mediante inicio de sesión o claves de API.
  • Autorización: comprueba los accesos permitidos mediante roles y permisos.
  • Cifrado: protege datos en reposo con KMS y en tránsito con TLS.
  • Cumplimiento: satisface normas como SOC2, HIPAA, PCI DSS y GDPR.

Conceptos del flujo de trabajo

Diseño de arquitectura

El proceso de crear la arquitectura de infraestructura:

  1. Idear: ¿qué debe hacer el sistema?
  2. Esbozar: dibujar la topología inicial con IA o patrones.
  3. Refinar: añadir detalles, componentes y conexiones.
  4. Analizar: ejecutar análisis de costos, seguridad y escalabilidad.
  5. Iterar: ajustar el diseño según los hallazgos.
  6. Finalizar: fijar el diseño de arquitectura.

Revisión de arquitectura

La validación antes de implementar:

  1. Compartir: enviar la arquitectura mediante un enlace con token.
  2. Comentarios: los revisores añaden sugerencias.
  3. Debate: conversaciones en hilos sobre componentes.
  4. Refinamiento: actualizar el diseño según los comentarios.
  5. Aprobación: los revisores validan el diseño final.

Gestión de versiones

Seguimiento de cambios a lo largo del tiempo:

  • Versiones: instantáneas de la arquitectura en distintos momentos.
  • Comparación: muestra qué cambió entre versiones.
  • Reversión: vuelve a una versión anterior cuando sea necesario.
  • Registro de cambios: documenta por qué se modificó.

Organización de datos

Proyectos

Unidades para agrupar arquitecturas relacionadas. Un proyecto puede ser:

  • Un microservicio: un proyecto por servicio.
  • Un producto: toda su arquitectura.
  • Una iniciativa, como «Migración a la nube 2024».

Espacios de trabajo

Espacios compartidos para colaborar en arquitecturas:

  • Varios miembros acceden a las mismas arquitecturas.
  • Los permisos determinan quién puede ver o editar.
  • Los comentarios y revisiones se realizan en tiempo real.

Organizaciones

Agrupación superior para empresas o proyectos grandes:

  • Gestiona miembros y roles.
  • Controla facturación y suscripción.
  • Define políticas para toda la organización.
  • Gestiona integraciones como GitHub o Discord.

Conceptos de análisis

Módulos de análisis

Herramientas especializadas para evaluar la arquitectura:

MóduloPregunta que responde
Estimador de costos¿Cuánto costará?
Analizador de escalabilidad¿Soportará nuestro crecimiento?
Modelador de amenazas¿Qué podría salir mal?
Simulador de rendimiento¿Qué rapidez tendrá?
Comprobador de cumplimiento¿Cumple la normativa?
Detector de desviaciones¿Ha cambiado respecto al diseño?

Cuello de botella

Un componente que limita el rendimiento global. Casos habituales:

  • Base de datos: añadir réplicas, caché o particionamiento.
  • Red: añadir CDN y optimizar consultas.
  • Cómputo: añadir servidores y escalado automático.

Límite de escalabilidad

Carga máxima antes de que se degrade la calidad:

  • Límite de procesamiento: máximo de solicitudes por segundo.
  • Límite de usuarios: máximo de usuarios simultáneos.
  • Límite de datos: máximo de datos o transacciones.

Exportación y uso compartido

Formatos de exportación

FormatoUso recomendadoIncluye
PNGCorreos, diapositivas y documentaciónSolo la imagen del diagrama
SVGWeb y edición posteriorVector escalable y editable
PDFImpresión y distribuciónDiagrama y metadatos
PPTPresentacionesDiapositivas con el diagrama
HTMLWeb interactivaDiagrama con enlaces y búsquedas

Temas

Personalización visual de las exportaciones:

  • Colores de componentes: un color por tipo de servicio.
  • Fondo: sólido, degradado, patrón o imagen personalizada.
  • Tipografía: familia, tamaños y grosores.
  • Logotipo: identidad de la empresa o del proyecto.
  • Colores de acento: resaltados, conexiones y texto.

Tokens de uso compartido

Enlaces seguros y temporales:

  • Caducidad: automática, de 7 días por defecto y configurable.
  • Permisos: solo lectura o posibilidad de comentar.
  • Analítica: visitantes y tiempo de consulta.
  • Revocación: el enlace se puede desactivar en cualquier momento.

Siguientes pasos

Conceptos fundamentales | Documentación | Architecto