Sem triggers, é necessário invocar uma função do Function Compute manualmente — pelo console, SDK ou API — sempre que ela precisar responder a um evento externo. Os triggers automatizam esse processo: quando um evento de um service conectado satisfaz as regras definidas, a source do evento invoca a função automaticamente. Isso permite criar fluxos de trabalho orientados a eventos sem escrever lógica de polling ou agendamento.
Como os triggers funcionam
O Function Compute usa um modelo orientado a eventos: uma source de evento atua como produtora e uma função atua como processadora. Cada trigger contém um conjunto de regras de correspondência. Quando um evento recebido satisfaz essas regras, a source do evento invoca a função associada.
Ainda é possível invocar uma função diretamente pelo Function Compute console, pelo SDK ou pela API. Os triggers têm uma finalidade distinta: invocação automática e sem intervenção manual, acionada por eventos em outros serviços do Alibaba Cloud ou em sistemas externos.
Um único trigger invoca apenas uma função. Para distribuir um trigger a múltiplas funções, use o Function Compute com o CloudFlow. Configure a função disparada para iniciar um workflow do CloudFlow e, em seguida, invoque funções adicionais dentro desse workflow. Consulte o demo para um exemplo funcional.
Casos de uso
|
Cenário |
Trigger a utilizar |
O que acontece |
|
Processar imagens conforme são enviadas para o OSS |
OSS trigger |
Detecta novos uploads e invoca a função para baixe, processar e armazenar o resultado |
|
Analisar logs à medida que chegam ao Simple Log Service |
Simple Log Service trigger |
Detecta atualizações de log e invoca a função para consumir os dados de log incrementais |
|
Execute uma tarefa em um horário fixo (por exemplo, coletar dados a cada hora) |
Time trigger |
Dispara a função no intervalo especificado automaticamente |
Métodos de invocação
Cada trigger invoca funções de forma síncrona ou assíncrona.
Invocação síncrona: o resultado é retornado após a função concluir o processamento do evento. Invocar uma função pelo Function Compute console é um exemplo de invocação síncrona.
Invocação assíncrona: o resultado é retornado após o evento ser gravado na fila interna do Function Compute. Em seguida, o Function Compute processa o evento de forma confiável em segundo plano.
Para mais detalhes, consulte Synchronous invocations.
Tipos de triggers
Os triggers são agrupados de acordo com a forma como se integram às fontes de eventos.
Triggers de integração bidirecional
Configure esses triggers tanto no Function Compute quanto no service de source do evento.
| Trigger | Método de invocação | Referências | |
|---|---|---|---|
| HTTP triggers | Síncrono e assíncrono | Overview | |
| Time triggers | Assíncrono | Time triggers | |
| OSS triggers | Assíncrono | Overview of OSS event triggers | |
| Simple Log Service triggers | Síncrono | Simple Log Service triggers | |
| Alibaba Cloud CDN triggers | Síncrono | Overview of Alibaba Cloud CDN event triggers | |
| Tablestore triggers | Síncrono | Tablestore triggers | |
| Simple Message Queue (formerly MNS) topic triggers | Assíncrono | Simple Message Queue (formerly MNS) topic triggers | |
|
Triggers baseados em EventBridge |
Simple Message Queue (formerly MNS) queue triggers (EventBridge-based) | Síncrono e assíncrono | Overview of Simple Message Queue (formerly MNS) queue triggers |
| ApsaraMQ for RocketMQ / Self-managed Apache RocketMQ triggers | Síncrono e assíncrono | ApsaraMQ for RocketMQ triggers | |
| ApsaraMQ for RabbitMQ triggers | Síncrono e assíncrono | ApsaraMQ for RabbitMQ triggers | |
| ApsaraMQ for Kafka triggers | Síncrono e assíncrono | ApsaraMQ for Kafka triggers | |
| ApsaraMQ for MQTT triggers | Síncrono e assíncrono | ApsaraMQ for MQTT triggers | |
| Data Transmission Service (DTS) triggers | Síncrono e assíncrono | DTS triggers | |
Triggers de integração unidirecional
Configure esses triggers apenas no Function Compute, não na source do evento.
|
Trigger |
Método de invocação |
Referências |
|
API Gateway triggers |
Síncrono |
|
|
ALB triggers |
Síncrono e assíncrono |
Triggers de eventos para serviços do Alibaba Cloud
Configure esses triggers no Function Compute e no EventBridge. Não é necessária nenhuma configuração no próprio service de source do evento.
|
Trigger |
Método de invocação |
Referências |
|
Event triggers for Alibaba Cloud services |
Síncrono e assíncrono |