Ideas de solución
En este artículo se describe una idea de solución. El arquitecto de la nube puede usar esta guía para ayudar a visualizar los componentes principales de una implementación típica de esta arquitectura. Use este artículo como punto de partida para diseñar una solución bien diseñada que se adapte a los requisitos específicos de la carga de trabajo.
Puede usar Azure Functions y Azure Cosmos DB para crear aplicaciones sin servidor distribuidas globalmente y escalables.
Architecture
Descargue un archivo Visio de esta arquitectura.
Flujo de datos
Un cliente realiza un pedido en un sitio web de comercio electrónico.
El orden desencadena una instancia de Functions. La función procesa la desprotección del cliente y almacena información sobre el pedido en Azure Cosmos DB.
La operación de inserción de base de datos desencadena un evento de fuente de cambios de Azure Cosmos DB.
Se notifica a los sistemas que se suscriben a los eventos de fuente de cambios.
Las notificaciones de fuente de cambios desencadenan Functions:
- Una función aplica impuestos al pedido.
- Una función procesa el pago del pedido.
- Una función cumple el orden.
Componentes
- Functions es una plataforma de proceso sin servidor basada en eventos. Con Functions, puede usar desencadenadores y enlaces de datos para integrar los servicios a gran escala.
- Azure Cosmos DB es una base de datos de varios modelos distribuida globalmente. Con Azure Cosmos DB, las soluciones pueden escalar de forma elástica el rendimiento y el almacenamiento en cualquier número de regiones geográficas.
Detalles del escenario
Los microservicios ofrecen muchas ventajas:
- Proporcionan soluciones altamente escalables.
- Puede implementar cada servicio de forma independiente.
- El aislamiento de errores es sencillo al limitar la funcionalidad a contenedores independientes.
- Encajan bien en un entorno de DevOps.
- Reducen el tiempo de comercialización acelerando el ciclo de vida de desarrollo de software.
Una manera eficaz de implementar microservicios es usar una tecnología sin servidor. Esta solución usa Functions, una oferta de Azure que proporciona una experiencia de proceso sin servidor. La solución usa Azure Cosmos DB para el almacenamiento de datos. Azure Cosmos DB ofrece una fuente de cambios que se integra con Functions.
Posibles casos de uso
Esta solución se aplica a muchas áreas:
- Comercio electrónico
- Retail
- Administración de inventario
Pasos siguientes
- Introducción a Azure Functions
- Bienvenido a Azure Cosmos DB
- Fuente de cambios en Azure Cosmos DB
- Creación de una función desencadenada por Azure Cosmos DB
- Conexión de Azure Functions a Azure Cosmos DB mediante Visual Studio Code
Recursos relacionados
Consulte las arquitecturas siguientes que incluyen Functions y Azure Cosmos DB:
- Patrón de bandeja de salida transaccional con Azure Cosmos DB
- Juegos con Azure Cosmos DB
- Tutorial de código: aplicación sin servidor con Functions
- Análisis de fuentes de noticias con análisis casi en tiempo real mediante el procesamiento de imágenes y lenguaje natural
Consulte las arquitecturas siguientes que incluyen Functions:
- Integración de Event Hubs con funciones sin servidor en Azure
- Supervisión de Event Hubs y Azure Functions
- Consideraciones de Azure App Service y Azure Functions para sistemas multiinquilino
- Rendimiento y escala para Event Hubs y Azure Functions
Consulte las arquitecturas siguientes que incluyen Azure Cosmos DB: