O que é o Async Mode?

O Async Mode permite que um cliente continue após a conclusão de sua requisição ou upload, enquanto a Transloadit processa a Assembly separadamente. Quando a Assembly especifica um notify_url, uma Assembly Notification entrega posteriormente os resultados ao back-end do cliente.

Como funciona o Async Mode

O Async Mode altera o ciclo de vida da requisição, não o grafo de processamento: o cliente é liberado assim que o envio é concluído, enquanto a Assembly continua na infraestrutura do serviço. Os dados finais chegam pela notificação enviada ao notify_url configurado, em vez de uma resposta interativa mantida aberta durante todo o processamento da Assembly, o que evita que os tempos limite do cliente e do proxy sejam atingidos em processamentos de mídia custosos. Aplicações que não podem receber notificações podem consultar periodicamente a URL do Assembly Status até que apareça um estado final. A aplicação deve manter um estado de correlação persistente e apresentar sua própria experiência para tarefas pendentes, concluídas com sucesso ou com falha.

Informações essenciais

  1. A resposta inicial confirma o encaminhamento para processamento, não a geração bem-sucedida da mídia, portanto um sistema voltado ao usuário precisa de um estado separado entre a aceitação do envio e a conclusão definitiva.
  2. As Assembly Notifications são enviadas somente quando a Assembly especifica um notify_url, e recebê-las exige um endpoint de servidor acessível. Uma aba do navegador ou um processo em um dispositivo móvel não é um receptor confiável; clientes sem um endpoint de servidor devem consultar periodicamente a URL do Assembly Status para verificar a conclusão.
  3. Novas tentativas e eventos da aplicação fora de ordem são questões normais em sistemas distribuídos, portanto o receptor deve identificar as atualizações pela identidade da Assembly e rejeitar transições de estado desatualizadas.

Quando o Async Mode é importante

Escolha o Async Mode quando o processamento puder durar mais que uma requisição interativa ou não deva bloquear o cliente. Configure notify_url para que os resultados cheguem ao seu back-end. O endpoint receptor deve autenticar as notificações e tratar novas tentativas ou entregas duplicadas com segurança; integrações sem um endpoint de servidor podem consultar periodicamente o Assembly Status como alternativa.

Transforme conhecimento sobre mídia em um pipeline funcional

Conecte uploads, processamento, IA, armazenamento e entrega por meio de uma única API declarativa, com o stack de codificação, o ajuste de escala e as constantes mudanças de formatos gerenciados para você.

Experimente a Transloadit gratuitamente