Arquitectura de aplicaciones en la nube: curso 44.900 rublos. del IBS Training Center, capacitación 25 horas, Fecha 26 de noviembre de 2023.
Miscelánea / / December 05, 2023
Este curso es el punto de partida para aprender a diseñar sistemas en la nube. El objetivo principal es presentar al oyente las características y desafíos de la nube, así como mostrar cómo utilizar las herramientas básicas de la nube. Esto es todo, tanto en teoría como respaldado por la práctica de diseñar una aplicación en equipo.
Después de una conferencia introductoria sobre “dónde encontrar la nube” y qué tipos hay, y una breve descripción de las principales tecnologías en el corazón de la computación en la nube, pasaremos al diseño del sistema.
Planificación de puntos de presencia, organización del tráfico entrante y saliente, entrega de contenido: los temas de estos módulos tratan sobre la construcción de redes virtuales en la nube y el servicio a los usuarios. A continuación, estudiaremos cómo se implementan los elementos funcionales: opciones de servidor y sin servidor. Consideremos opciones para trabajar con datos constantes y qué DBMS son aplicables en cada caso. Completemos nuestra introducción a los componentes básicos resolviendo problemas de integración.
Escalabilidad, rendimiento, seguridad y tolerancia a fallos: estudiaremos y aplicaremos las tácticas básicas para lograr estas cualidades del sistema.
La automatización es importante para el funcionamiento eficiente de los sistemas en la nube. Los proveedores de IaaS/PaaS nos permiten asignar y mantener recursos automáticamente, organizar el seguimiento y las reacciones ante cambios en la aplicación y fallos. Analizaremos los escenarios más importantes.
Tópicos cubiertos:
1. Conceptos básicos de computación en la nube
¿Qué es la “nube” y dónde está?
Tipos de "nubes".
Tecnologías detrás de la computación en la nube.
Nuevos modelos de servicios: IaaS, PaaS, SaaS.
Economía de la nube.
2. Principios de diseño de aplicaciones en la nube
Aplicación mínima en la nube.
Bloques de construcción de aplicaciones en la nube.
Tipos de “elementos básicos”: informática, almacenamiento, infraestructura de red, servicios gestionados.
Aplicaciones nativas de la nube.
Multi Alquiler.
Retos de diseño: comunicaciones, escalamiento, trabajo con el estado.
3. Diseño de límites de aplicaciones
Tipos de tráfico, redes virtuales.
Enrutamiento con y sin redes privadas virtuales.
Regiones y áreas de presencia.
Procesamiento de solicitudes externas: contenido dinámico y estático.
Procesamiento de solicitudes de clientes internos.
Modelos de pago de tráfico. Estructura de facturación.
4. Diseño informático
Servidores “clásicos”, servidores “elásticos”, entornos de ejecución de aplicaciones, contenerización, computación sin servidor.
Patrones básicos: monolito escalable, aplicación compuesta.
5. Diseño de datos persistentes
Capacidades básicas de almacenamiento: almacenamiento de bloques, objetos y archivos.
Factores clave para evaluar los métodos de almacenamiento de datos: modelo de presentación, consistencia, tolerancia y disponibilidad a fallas, carga.
Opciones de base de datos disponibles: relacional, clave-valor, documento, familias de columnas, otras.
Opciones de almacenamiento.
6. Resolución de problemas de coordinación e integración.
Llamadas remotas.
Comunicación sincrónica y asincrónica.
Brokers, Colas, Kafka, API Gateways y Service Mesh.
7. Automatización
Brevemente sobre las posibilidades de automatización en desarrollo y operación.
Seleccionar métricas.
8. Cualidades del sistema de direccionamiento
Rendimiento de la red, localización del tráfico.
Seguridad, tolerancia a fallos.
Evite fallas en cascada.
9. Algunos métodos arquitectónicos para diseñar aplicaciones en la nube.
La aplicación de doce factores, marco bien diseñado.