Quando usar os Aplicativos Lógicos do Azure

Concluído

Aqui, discutimos como você pode decidir se os Aplicativos Lógicos do Azure são a escolha certa para um fluxo de trabalho. Vamos começar listando alguns critérios que indicam se os Aplicativos Lógicos do Azure atendem às suas metas funcionais e de desempenho.

Critérios de decisão

As Aplicações Lógicas do Azure ajudam-no a coordenar o fluxo de dados através de sistemas diferentes. Os casos em que os Aplicativos Lógicos do Azure podem não ser a melhor opção geralmente envolvem requisitos em tempo real, regras de negócios complexas ou uso de serviços não padrão. Em seguida, abordar-se-á brevemente cada um destes fatores.

Fator Descrição
Integração A principal pergunta a ser feita quando você está considerando os Aplicativos Lógicos do Azure é "preciso integrar serviços?" Os Aplicativos Lógicos do Azure funcionam bem quando você precisa fazer com que vários aplicativos e sistemas trabalhem juntos. Foi para isso que foram concebidas. Se você estiver criando um aplicativo sem conexões externas, os Aplicativos Lógicos do Azure provavelmente não são a melhor opção.
Desempenho O próximo fator a considerar é o desempenho. O mecanismo de execução dos Aplicativos Lógicos do Azure dimensiona seus aplicativos automaticamente. Os Aplicativos Lógicos do Azure podem processar grandes conjuntos de dados em paralelo para permitir que você obtenha alta taxa de transferência. Contudo, não garantem uma ativação extremamente rápida nem impõem restrições em tempo real ao nível do tempo de execução. Se você estiver procurando por um tempo de resposta de subsegundo baixo, os Aplicativos Lógicos do Azure podem não ser a melhor opção.
Condicionais Os Aplicativos Lógicos do Azure fornecem construções de controle como expressões booleanas, instruções de switch e loops para que seus aplicativos possam tomar decisões com base em seus dados. Você pode criar condicionais altamente complexos e profundamente aninhados em seus fluxos de trabalho de aplicativos lógicos. Há duas razões pelas quais poderá preferir não o fazer. Primeiro, muitas vezes é mais fácil escrever lógica condicional no código do que usar o designer de fluxo de trabalho. Em segundo lugar, não é possível partilhar facilmente regras de negócio incorporadas com as suas outras aplicações. Algumas pessoas gostam de incluir regras de negócios complexas diretamente em seus fluxos de trabalho de aplicativos lógicos. Outras acham que é mais fácil de escrever algo como uma função do Azure para encapsular a lógica condicional e invocar essa função a partir de todas as aplicações.
Conectores A última consideração é se existem conectores pré-construídos para todos os serviços que você precisa acessar. Se houver, está pronto para começar. Se não, então você precisa criar um conector personalizado. Se o serviço já tiver uma API REST ou SOAP, pode criar o conector personalizado no prazo de algumas horas sem escrever código. Se não, então você precisa criar a API primeiro antes de fazer o conector.

Aplicar os critérios

Os Aplicativos Lógicos do Azure funcionam melhor quando você integra vários serviços com alguma lógica de controle adicionada. Contudo, muitas vezes, a decisão é subjetiva. Vamos pensar sobre a forma como se podem aplicar estes critérios aos nossos exemplos de processos.

A nossa empresa de calçado fictícia precisava de monitorizar redes sociais, transferir vídeos antigos para o armazenamento de arquivos e vender calçado online. O objetivo consistia em decidir se essas tarefas eram boas candidatas a aplicações lógicas. Para tomarmos a nossa decisão, devíamos analisar cada tarefa com recurso aos quatro critérios que desenvolvemos: integração, desempenho, condicionais e conectores. A seguinte tabela resume os resultados.

Integração Desempenho Condicionais Conectores Deve utilizar-se o Logic Apps?
Monitor de redes sociais Integra múltiplos serviços Não necessita de latência baixa em tempo quase real Uma condicional simples Conectores incorporados disponíveis para todos os sistemas necessários Sim
Utilitário de arquivo de vídeos Só precisa de aceder a um serviço: o armazenamento na cloud Não necessita de latência baixa em tempo quase real Duas condicionais simples Conectores incorporados disponíveis para todos os sistemas necessários Sim
Vendas online diretas Integra múltiplos serviços Não necessita de latência baixa em tempo quase real Múltiplas condicionais complexas São necessários múltiplos conectores personalizados Talvez

Há algumas coisas interessantes nas quais se deve pensar no âmbito desta análise.

  • A tarefa de arquivo de vídeos é uma boa opção para o Logic Apps, apesar de não integrar múltiplos sistemas. Os Aplicativos Lógicos do Azure têm um gatilho de temporizador interno e um conector de blob do Azure que são perfeitos para implementar esse processo.

  • O processo de vendas online provavelmente envolveria uma lógica de negócio complexa. Por exemplo, poderíamos ter diferentes processos de aprovação com base no valor de compra ou diferentes transitários com base no destino. Os Aplicativos Lógicos do Azure podem lidar facilmente com essas condições. Somos nós que decidimos se queremos incorporar estas regras de negócio na nossa aplicação.

  • O processo de vendas online provavelmente utilizaria uma combinação de conectores incorporados e personalizados. Poderíamos utilizar conectores incorporados para notificações por e-mail e acesso à base de dados, mas provavelmente necessitaríamos de um conector personalizado para comunicar com o nosso serviço de processamento de pagamentos.

  • O desempenho dos Aplicativos Lógicos do Azure funciona bem para todas as tarefas. Alguns deles podem processar grandes quantidades de dados, mas os Aplicativos Lógicos do Azure são dimensionados automaticamente para lidar com alta taxa de transferência ou picos de demanda. Nenhuma dessas tarefas requer tempo de resposta de baixa latência. Teria de haver restrições em tempo quase real para que isso constituísse um problema.

Os Aplicativos Lógicos do Azure podem funcionar para todas essas tarefas. O processo de vendas online é a única tarefa onde quereríamos ponderar todas as nossas opções. Os Aplicativos Lógicos do Azure seriam uma boa escolha se tivéssemos os recursos para criar os conectores personalizados de que precisaríamos.

Orientação resumida

O fluxograma a seguir resume as principais perguntas a serem feitas quando você estiver pensando em usar os Aplicativos Lógicos do Azure.

Flowchart of the key questions to ask when evaluating Azure Logic Apps for your work.

Um fluxograma para ajudá-lo a decidir se os Aplicativos Lógicos do Azure são apropriados para o seu trabalho. O fluxograma resume as principais perguntas a serem feitas ao avaliar os Aplicativos Lógicos do Azure para seu trabalho. Em primeiro lugar, o seu projeto envolve a integração de múltiplos sistemas? Em segundo lugar, precisa de uma latência baixa? Em terceiro lugar, o seu processo inclui uma lógica complexa? Em quarto lugar, há conectores para todos os sistemas a que precisa de aceder?