Nos últimos anos, a aceitação de dispositivos conectados à Internet cresceu exponencialmente e não diminuirá nos próximos anos. De acordo com o Gartner, até 2023, o CIO médio será responsável por mais de três vezes os endpoints que eles gerenciaram em 2018. No entanto, suportar tal aumento exigiria ampliação da infraestrutura de nuvem e provisão substancial de capacidade de rede, o que pode não ser economicamente viável.
Nesses casos, a computação de borda pode surgir como uma solução, pois os recursos necessários, como computação, armazenamento e rede, podem ser fornecidos mais próximos da fonte de dados para processamento.
As empresas estão procurando por insights quase em tempo real e acionáveis, o que está impulsionando a aceitação da computação de ponta em todos os setores. Os benefícios da computação de borda são bem conhecidos, e em um artigo anterior, ilustrei os benefícios e alguns casos de uso.
Adotando a computação de borda no desenvolvimento de aplicativos da Web
É apenas uma questão de tempo até que a borda se torne mainstream , conforme demonstrado por uma pesquisa recente da IDC que descobriu que 73% dos entrevistados escolheram a computação de ponta como um investimento estratégico. A comunidade de código aberto, provedores de nuvem e provedores de serviços de telecomunicações estão trabalhando para fortalecer o ecossistema de computação de ponta, acelerando sua adoção e o ritmo da inovação.
Com esses ventos favoráveis, os desenvolvedores de aplicativos da web deve se concentrar em ter um plano de adoção de borda em vigor para ser mais ágil e aproveitar a capacidade da borda de melhorar a taxa de engajamento do usuário.
Benefícios como insights quase em tempo real com baixa latência e uso reduzido de largura de banda do servidor em nuvem reforçam a aceitação da computação de borda em todos os setores para aplicativos da web. Adotar uma arquitetura de computação de borda para aplicativos de sites pode aumentar a produtividade, reduzir custos, economizar largura de banda e criar novos fluxos de receita.
Descobri que existem quatro habilitadores críticos para computação de borda que ajudam desenvolvedores e arquitetos da Web vá em frente.
1. Garanta a agilidade do aplicativo com a arquitetura de aplicativo correta
O ecossistema de borda compreende vários componentes, como dispositivos, gateways, servidores de borda ou nós de borda, servidores em nuvem etc. Para aplicativos da Web, a carga de trabalho de computação de borda deve ser ágil o suficiente para ser executada em componentes de ecossistema de borda, dependendo da carga de pico ou disponibilidade.
No entanto, pode haver casos de uso específicos, como detecção atividade de caça furtiva via drone em uma floresta densa com pouca ou nenhuma conectividade de rede, o que demanda o desenvolvimento de aplicativos nativos para os dispositivos de borda ou gateways.
“Adotar Padrões de arquitetura nativos da nuvem, como microsserviço ou sem servidor, fornecem agilidade de aplicativo. A definição do nativo da nuvem, conforme explicado pela Cloud Native Computing Foundation (CNCF), suporta este argumento
: ‘”Tecnologias nativas da nuvem capacitar as organizações a criar e executar aplicativos escaláveis em nuvens públicas, privadas e híbridas.’”
Recursos como contêineres, malhas de serviço , microsserviços, infraestrutura imutável e interfaces de programação de aplicativos (APIs) declarativas ilustram melhor essa abordagem. Esses recursos permitem sistemas fracamente acoplados que são resilientes, gerenciáveis e observáveis. Eles permitem que os engenheiros façam alterações de alto impacto com frequência e com o mínimo de esforço.”
O principal passo na adoção da computação de borda seria usar uma arquitetura nativa da nuvem para o aplicativo ou pelo menos para o serviço que deve ser implantado na borda.
2. Obtenha benefícios de infraestrutura e serviços de borda adotando CSPs
Os provedores de serviços em nuvem (CSPs) oferecem serviços como computação e armazenamento local para um região ou zona, que atuam como centros de dados mini/regionais gerenciados por CSPs. Aplicativos ou serviços que seguem o princípio “desenvolva uma vez e implante em qualquer lugar” podem ser facilmente implantados nessa infraestrutura de borda.
CSPs como AWS (posto avançado, bola de neve), Azure (zonas de borda), GCP (Anthos ) e a IBM (satélite em nuvem) já estenderam alguns de seus serviços totalmente gerenciados para configuração local. Startups ou empresas em estágio de crescimento podem facilmente aproveitar essas soluções de nuvem híbrida para implantar soluções de borda mais rapidamente e para maior segurança, pois podem arcar com o custo associado.
Para um aplicativo executado em dispositivos móveis sem fio que dependem de celular conectividade, a nova tecnologia 5G celular pode fornecer um benefício de latência considerável. Além disso, os CSPs estão implantando seus recursos de computação e armazenamento mais próximos da rede da operadora de telecomunicações, que aplicativos móveis como jogos ou realidade virtual podem utilizar para aprimorar a experiência do usuário final.
3. Aproveite a execução de código personalizado com CDNs
Content Delivery Networks (CDNs) distribuíram Pontos de Presença (PoP) para armazenar em cache e servir o conteúdo de aplicativos da web com mais rapidez. Eles estão evoluindo rapidamente, e muitos PoPs agora têm tempo de execução de linguagem como JavaScript (v8), que permite a execução do programa mais perto da borda. Além disso, aumenta a segurança migrando a lógica do programa do lado do cliente para a borda.
Aplicativos da Web, como portais de compras on-line, podem oferecer uma melhor experiência ao cliente com latência reduzida quando habilitados com esses serviços. Por exemplo, os aplicativos podem se beneficiar mais movendo a lógica de manipulação de cookies para o processamento de borda da CDN em vez de atingir o servidor de origem. Esse movimento pode ser eficaz quando há um grande aumento de tráfego durante eventos como Black Friday e Cyber Monday.
Além disso, esse método também pode ser eficaz para executar testes A/B. Você pode atender a um subconjunto fixo de usuários com uma versão experimental do aplicativo enquanto oferece ao restante dos participantes uma versão diferente.
4. Use formatos de modelo de aprendizado profundo aberto que forneçam interoperabilidade de estrutura de ML
A diversidade de modelos de rede neural e estruturas de modelo cresceu várias vezes no últimos anos. Isso encorajou os desenvolvedores a usar e compartilhar modelos de rede neural em um amplo espectro de estruturas, ferramentas, tempos de execução e compiladores. Mas antes de executar um formato de modelo de IA/ML padrão em vários dispositivos de borda, desenvolvedores e empreendedores devem procurar alguma padronização para combater a heterogeneidade da borda.
Formatos de modelo de aprendizado profundo aberto como Open Neural Network Exchange (ONNX) está surgindo como uma solução, pois oferece suporte à interoperabilidade para estruturas de aprendizado profundo comumente usadas. Ele fornece um mecanismo para exportar modelos de diferentes frameworks para o formato ONNX. O ONNX Runtime está disponível em outros idiomas, incluindo JavaScript. Tanto os modelos quanto os tempos de execução são compatíveis com várias plataformas, incluindo dispositivos de baixo custo.
A abordagem convencional para aplicativos de aprendizado de máquina é gerar modelos de IA/ML em um ambiente de nuvem de computação intensiva e usar esse modelo para inferência. Com estruturas JavaScript AI/ML, é possível executar inferência em aplicativos baseados em navegador. Algumas dessas estruturas também suportam modelos de treinamento em navegador ou back-end JavaScript.
As decisões de tecnologia corretas garantem melhores valores de negócios
Ao trabalhar com dezenas de startups, descobri que as melhores decisões de negócios às vezes dependem da adoção antecipada de tecnologias emergentes, como computação de ponta, para melhor impacto nos clientes.
No entanto, a adoção de tecnologia emergente exige planejamento e premeditação para ser bem-sucedida. Ao seguir os facilitadores acima, você está bem posicionado para uma integração perfeita e sustentável da computação de borda para desenvolver aplicativos baseados na Web.






