Tutorial de fluxo de trabalho de assinatura com Amazon SWF e Amazon SNS - Amazon Simple Workflow Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Tutorial de fluxo de trabalho de assinatura com Amazon SWF e Amazon SNS

Esta seção fornece um tutorial que descreve como criar um aplicativo de fluxo de trabalho do Amazon SWF que consiste em um conjunto de quatro atividades que operam sequencialmente. Ela abrange também:

  • Definir opções de fluxo de trabalho e atividade padrão e de tempo de execução.

  • Sondagem do Amazon SWF para tarefas de decisão e atividade.

  • Passagem de dados entre as atividades e o fluxo de trabalho com o Amazon SWF.

  • Aguardando tarefas humanas e relatando batimentos cardíacos para o Amazon SWF a partir de uma tarefa de atividade.

  • Usar o Amazon SNS para criar um tópico, inscrever um usuário nele e publicar mensagens nos pontos de extremidade inscritos.

Você pode usar o Amazon Simple Workflow Service (Amazon SWF) e o Amazon Simple Notification Service (Amazon SNS) juntos para emular um fluxo de trabalho de "tarefa humana" - um fluxo de trabalho no qual um trabalhador humano é solicitado a executar alguma ação e, em seguida, comunicar-se com o Amazon SWF para iniciar a próxima atividade no fluxo de trabalho.

Como o Amazon SWF é um serviço da Web baseado em nuvem, a comunicação com o Amazon SWF pode se originar de qualquer lugar em que uma conexão com a Internet esteja disponível. Nesse caso, usaremos o Amazon SNS para nos comunicarmos com o usuário por e-mail, mensagem de texto SMS ou ambos.

Este tutorial usa o AWS SDK for Rubypara acessar o Amazon SWF e o Amazon SNS, mas há muitas opções de desenvolvimento disponíveis, incluindo a para Ruby, que facilita AWS Flow Framework a coordenação e a comunicação com o Amazon SWF.

nota

Este tutorial usa o AWS SDK for Ruby, mas recomendamos que você use o AWS Flow Framework para Java.

Sobre o fluxo de trabalho

O fluxo de trabalho que desenvolveremos consiste em quatro etapas principais:

  1. Obtenha um endereço de inscrição (e-mail ou SMS) do usuário.

  2. Crie um tópico do SNS e inscreva os endpoints fornecidos nesse tópico.

  3. Aguarde até que o usuário confirme a inscrição.

  4. Se o usuário confirmar, publique uma mensagem de felicitações no tópico.

Essas etapas incluem atividades completamente automatizadas (etapas 2 e 4) e outras que exigem que o fluxo de trabalho aguarde até que um operador humano forneça alguns dados à atividade antes que o fluxo de trabalho possa avançar (etapas 1 e 3).

Cada etapa depende dos dados gerados pela etapa anterior (você deve ter um endpoint antes de inscrevê-lo em um tópico e deve ter uma assinatura de tópico para aguardar a confirmação, etc.) Este tutorial também abordará como fornecer resultados de atividades após a conclusão e como transmitir informações para uma tarefa que está sendo agendada. O Amazon SWF gerencia a coordenação e a entrega de informações entre as atividades e o fluxo de trabalho, e vice-versa.

Também estamos usando a entrada do teclado e o Amazon SNS para lidar com a comunicação entre o Amazon SWF e o ser humano que está fornecendo dados para o fluxo de trabalho. Na prática, você pode usar muitas técnicas diferentes para se comunicar com usuários humanos, mas o Amazon SNS oferece uma maneira muito fácil de usar e-mail ou mensagens de texto para notificar o usuário sobre eventos no fluxo de trabalho.

Pré-requisitos

Para acompanhar este tutorial, você precisará do seguinte:

Se já tiver essa configuração, você estará pronto para continuar. Se você não quiser executar o exemplo, ainda poderá seguir o tutorial — grande parte do conteúdo deste tutorial se aplica ao uso do Amazon SWF e do Amazon SNS, independentemente da opção de desenvolvimento escolhida.

Etapas do tutorial

Este tutorial está dividido nas seguintes etapas: