Fluxos de trabalho versus APIs

Ecossistema F5 | 16 de abril de 2018

Hoje tenho uma tarefa para você. Quero que você — sim, você aí mesmo — deposite um cheque no banco. Você precisa entrar no carro, dirigir até o banco, entrar, fazer o depósito com o caixa e depois voltar para casa.

Irritado? É para ficar mesmo, especialmente quando você poderia simplesmente usar o aplicativo do seu banco para fazer isso sem todas essas etapas extras.

E essa, meus amigos, é a diferença entre um fluxo de trabalho (um processo) e uma API.

Existe algo muito real (eu inventei o nome, mas não sua existência) chamado imposto de API. Trata-se do tempo e da dívida técnica gerados pela execução de processos complexos por meio de chamadas individuais de API. É como ir pessoalmente ao banco em vez de usar o aplicativo no celular para fazer esse depósito.

Esse imposto aumenta à medida que os processos se expandem. Se você tem um processo longo que exige dez ou vinte chamadas de API diferentes, o código (scripts também são código) fica cada vez mais complicado, o que dificulta a solução de problemas e torna futuras alterações mais difíceis. Engessar processos por meio de chamadas de API individuais é o oposto de agilidade. É uma fragilidade que elimina a oportunidade de aumentar a eficiência por meio da otimização.

Os fluxos de trabalho são, basicamente, processos predefinidos para tarefas executadas com frequência. A maioria dos processos de negócios (e até mesmo operacionais) se enquadra nessa categoria. São os comandos usados para fazer login, navegar até a área correta do sistema, alterar o controle de acesso na porta e, em seguida, confirmar a alteração. Sempre que essa tarefa é realizada, o procedimento é o mesmo. Trata-se de um processo executado com frequência que poderia ser facilmente codificado. Há muitos processos desse tipo nas operações e, ao encapsulá-los em um fluxo de trabalho, podemos não apenas eliminar o custo adicional das APIs, mas também melhorar a qualidade e a sustentabilidade dos scripts que os invocam.

Isso acontece porque usar fluxos de trabalho em vez de APIs resulta em um código menos complexo, mais fácil de gerenciar e de alterar. Eles são mais ágeis e menos frágeis.

Considere este exemplo totalmente fictício. No primeiro caso, temos uma abordagem baseada em API. Cada etapa desse processo representa uma chamada de API. Isso significa que um script com quase vinte chamadas diferentes precisa ser desenvolvido, testado e mantido ao longo do tempo. Isso é dívida técnica. Ele fica vinculado à versão da API do sistema com o qual interagia quando foi escrito. Se uma dessas chamadas mudar, o script também precisará mudar.

À direita, temos uma abordagem baseada em fluxo de trabalho. Ainda é possível iniciar o processo por meio de uma chamada de API (provavelmente a opção preferível em muitas organizações), mas as etapas propriamente ditas são executadas com base nos parâmetros (variáveis) enviados na chamada inicial. Talvez seja necessário fazer uma limpeza e um commit, mas, ainda assim, você reduziu o código necessário a duas interações ou menos.

Isso não quer dizer que usar APIs e modelos seja algo ruim. Não é. Mas muitas vezes — especialmente no mundo das redes — o uso de APIs exige conhecimentos específicos sobre o sistema e sobre redes em geral. Isso dificulta o trabalho de DevOps ou desenvolvedores com as APIs. Uma abordagem baseada em fluxos de trabalho elimina a necessidade de conhecimento ou experiência prévia, o que significa que a equipe de DevOps se sentirá à vontade para usá-los, enquanto a equipe de NetOps mantém sua segurança no emprego.

Em ambientes onde a automação está ganhando espaço (e talvez até assumindo o controle), uma abordagem baseada em fluxos de trabalho pode proporcionar um alívio significativo para as equipes de NetOps, permitindo que as equipes de DevOps executem tarefas sem precisar de um vasto conhecimento específico do domínio.

E, de quebra, eles também podem evitar aquelas incômodas taxas de API. E quem não gosta de evitar taxas?

Compartilhar
Tags: 2018

Sobre o autor

Lori Mac Vittie
Lori Mac VittieEngenheiro Emérito e Evangelista-Chefe | F5

Lori MacVittie é engenheira distinta e evangelista-chefe no Escritório do CTO da F5, com ampla experiência em entrega de aplicações, estratégia de automação e infraestrutura. Ela é conhecida por transformar complexidade em clareza, seja definindo diretrizes para agentes de IA, analisando arquiteturas multinuvem frágeis ou investigando os limites de sistemas escaláveis. Ela acumula mais de trinta anos de experiência no setor, abrangendo desenvolvimento de aplicações, arquitetura de TI e operações de redes e sistemas. Antes de ingressar na F5, atuou como editora de tecnologia e recebeu diversos prêmios. MacVittie tem mestrado em Ciência da Computação e é uma autora prolífica, com publicações que abrangem segurança, nuvem e arquitetura empresarial. Ela também é uma entusiasta de jogos de tabuleiro e videogames, além de ter opiniões assumidamente fortes sobre queijos.

Mais publicações de Lori Mac Vittie

Publicações relacionadas no blog

Entrega e proteção de agentes de IA em fábricas de IA: F5 para a arquitetura de referência NVIDIA OpenShell para agentes de IA seguros
Ecossistema F5 | 21/10/2026

Entrega e proteção de agentes de IA em fábricas de IA: F5 para a arquitetura de referência NVIDIA OpenShell para agentes de IA seguros

As soluções da F5 ampliam a Arquitetura de Referência NVIDIA OpenShell para agentes de IA seguros.

Como medir – e minimizar – o custo total de propriedade do seu Kubernetes
Ecossistema F5 | 10/12/2020

Como medir – e minimizar – o custo total de propriedade do seu Kubernetes

O Kubernetes pode ser baixado e executado gratuitamente, mas sua manutenção está longe de não ter custos. Assim como outras grandes plataformas de código aberto que são “gratuitas” apenas em um sentido simplista, o Kubernetes quase certamente exigirá investimentos para ser implantado e operado.

As-Code: a pilha de TI contínua
Ecossistema F5 | 08/10/2018

As-Code: a pilha de TI contínua

Infraestrutura, configuração, pipeline, operações. De repente, tudo é “como código”. Lori MacVittie busca esclarecer a terminologia e identificar os diferentes componentes de uma stack contínua de TI.

O estado da entrega de aplicações em 2017: automação, APIs e DevOps
Ecossistema F5 | 17/04/2017

O estado da entrega de aplicações em 2017: automação, APIs e DevOps

Explore o relatório State of Application Delivery de 2017. Leia o blog retrospectivo da F5 sobre o início da ascensão das redes declarativas e dos pipelines de DevOps.

DevOps Summit: onde a rede foi convidada para a festa
Ecossistema F5 | 11/06/2015

DevOps Summit: onde a rede foi convidada para a festa

No DevOps Summit NY, falou-se muito não apenas sobre DevOps, mas também sobre contêineres, IoT e microsserviços. As sessões se concentraram não só na mudança cultural necessária para crescer em escala com uma abordagem DevOps, mas também fizeram questão de incluir...

F5 e Nutanix convergem em infraestrutura no .NEXT
Ecossistema F5 | 08/06/2015

F5 e Nutanix convergem em infraestrutura no .NEXT

Aplicações empresariais como Microsoft SharePoint e Exchange, juntamente com a VDI, continuam sendo a espinha dorsal da sua empresa. A produtividade, embora não seja tão atraente quanto o lucro, é um fator essencial para o sucesso das operações empresariais atuais. Deixar de...