Sin disparadores, debe invocar una función de Function Compute de forma manual cada vez que necesite responder a un evento externo. Esta invocación se hace desde la consola, el SDK o la API. Los disparadores automatizan este proceso: cuando un evento de un servicio conectado coincide con las reglas que usted define, el origen del evento invoca la función automáticamente. Esto le permite construir flujos de trabajo basados en eventos sin escribir lógica de sondeo ni de programación.
Cómo funcionan los disparadores
Function Compute utiliza un modelo basado en eventos. Un origen de eventos actúa como productor y una función como procesador. Cada disparador contiene un conjunto de reglas de coincidencia. Cuando un evento entrante cumple esas reglas, el origen del evento invoca la función asociada.
También puede invocar una función directamente desde la consola de Function Compute, el SDK o la API. Los disparadores tienen un propósito distinto: ejecutan la invocación automática y sin intervención manual, impulsada por eventos de otros servicios de Alibaba Cloud o de sistemas externos.
Un solo disparador invoca únicamente una función. Para distribuir un disparador hacia varias funciones, utilice Function Compute junto con CloudFlow. Configure la función activada para iniciar un flujo de trabajo de CloudFlow y luego invoque funciones adicionales desde ese mismo flujo de trabajo. Consulte la demostración para ver un ejemplo funcional.
Casos de uso
|
Escenario |
Disparador recomendado |
Qué sucede |
|
Procesar imágenes conforme se suben a OSS |
Disparador de OSS |
Detecta las nuevas cargas e invoca la función para descargar, procesar y almacenar el resultado |
|
Analizar registros a medida que llegan a Simple Log Service |
Disparador de Simple Log Service |
Detecta actualizaciones de registros e invoca la función para consumir los datos incrementales |
|
Ejecutar una tarea con una programación fija (por ejemplo, recopilar datos cada hora) |
Disparador de tiempo |
Activa la función automáticamente en el intervalo especificado |
Métodos de invocación
Cada disparador invoca las funciones de manera síncrona o asíncrona.
Invocación síncrona: El resultado se devuelve después de que la función termina de procesar el evento. Invocar una función desde la consola de Function Compute es un ejemplo de invocación síncrona.
Invocación asíncrona: El resultado se devuelve después de que el evento se escribe en la cola interna de Function Compute. Luego, Function Compute procesa el evento de forma confiable en segundo plano.
Para más detalles, consulte Synchronous invocations.
Tipos de disparadores
Los disparadores se agrupan según su forma de integración con los orígenes de eventos.
Disparadores de integración bidireccional
Configure estos disparadores tanto en Function Compute como en el servicio de origen de eventos.
| Disparador | Método de invocación | Referencias | |
|---|---|---|---|
| Disparadores HTTP | Síncrono y asíncrono | Descripción general | |
| Disparadores de tiempo | Asíncrono | Time triggers | |
| Disparadores de OSS | Asíncrono | Descripción general of OSS event triggers | |
| Disparadores de Simple Log Service | Síncrono | Simple Log Service triggers | |
| Disparadores de Alibaba Cloud CDN | Síncrono | Descripción general of Alibaba Cloud CDN event triggers | |
| Disparadores de Tablestore | Síncrono | Tablestore triggers | |
| Disparadores de temas de Simple Message Queue (anteriormente MNS) | Asíncrono | Simple Message Queue (formerly MNS) topic triggers | |
|
Disparadores basados en EventBridge |
Disparadores de colas de Simple Message Queue (anteriormente MNS) (basados en EventBridge) | Síncrono y asíncrono | Descripción general of Simple Message Queue (formerly MNS) queue triggers |
| Disparadores de ApsaraMQ for RocketMQ / Apache RocketMQ autogestionado | Síncrono y asíncrono | ApsaraMQ for RocketMQ triggers | |
| Disparadores de ApsaraMQ for RabbitMQ | Síncrono y asíncrono | ApsaraMQ for RabbitMQ triggers | |
| Disparadores de ApsaraMQ for Kafka | Síncrono y asíncrono | ApsaraMQ for Kafka triggers | |
| Disparadores de ApsaraMQ for MQTT | Síncrono y asíncrono | ApsaraMQ for MQTT triggers | |
| Disparadores de Data Transmission Service (DTS) | Síncrono y asíncrono | DTS triggers | |
Disparadores de integración unidireccional
Configure estos disparadores únicamente en Function Compute, no en el origen de eventos.
|
Disparador |
Método de invocación |
Referencias |
|
Disparadores de API Gateway |
Síncrono |
|
|
Disparadores de ALB |
Síncrono y asíncrono |
Disparadores de eventos para servicios de Alibaba Cloud
Configure estos disparadores en Function Compute y EventBridge. No se requiere ninguna configuración en el propio servicio de origen de eventos.
|
Disparador |
Método de invocación |
Referencias |
|
Disparadores de eventos para servicios de Alibaba Cloud |
Síncrono y asíncrono |