Fazer login no IT Mídia Redefinir senha
Bem-vindo de volta,
Digite seu e-mail e clique em enviar
Ainda não tem uma conta? Cadastre-se
Salvar em Nova pasta de favoritos

+

Criar pasta
Últimos favoritos Ver todos
Home  >  Plataformas

7 maneiras pelas quais a nuvem está mudando

Computando sem servidores? Programação sem código? Vamos refletir sobre essas e outras inovações na nuvem em constante evolução

Peter Wayner, Infoworld

06/04/2021 às 21h01

Foto: Adobe Stock

A palavra “nuvem” é uma daquelas palavras nebulosas que as pessoas usam com uma convicção inabalável. Quando os políticos ficam em apuros, eles gostam de dizer que a solução para um problema é mais “educação”. Os médicos jogam a palavra "descanso". E na última década ou mais, todos na área de TI, do estagiário ao CIO, sabem que a resposta certa para qualquer pergunta é “a nuvem”.

A palavra, porém, esconde uma grande complexidade e confusão porque significou muitas coisas diferentes ao longo dos anos. Antes mesmo de a palavra da moda ser adotada, as empresas de mainframe vendiam sistemas de timeshare. As primeiras empresas de colocation alugaram contas em servidores Unix. Empresas como a America Online ofereciam serviços de armazenamento e computação em nuvem sob o pretexto de entretenimento.

Essa evolução continuou mesmo depois que a palavra foi coroada. As primeiras ofertas eram apenas dezenas de máquinas virtuais finas em execução em servidores gordos. Você pode fingir ser root mesmo que sua instância seja uma pequena fração da máquina. Em seguida, os servidores FTP foram renomeados como baldes e caixas de depósito. Desde então, os serviços explodiram e as letras “AAS” se tornaram o sufixo favorito dos criadores de acrônimos.

A evolução continua e cada novo desenvolvimento faz com que os usuários da nuvem repensem o que desejam alugar e o que esperam obter com o dinheiro. Muitas dessas são ideias redescobertas que foram reempacotadas e reformuladas. Muitas são soluções inteligentes que resolvem os problemas criados pela última geração de soluções. Todos eles nos dão a chance de olhar para o que estamos construindo e "torná-lo novo de novo".

Aqui estão sete maneiras importantes pelas quais a nuvem está inovando e evoluindo.

Granularidade para economizar dinheiro

A primeira geração de computação sem servidor veio com unidades de computação relativamente grandes. O AWS Lambda, por exemplo, começou arredondando todas as chamadas para 100 ms. Os programadores aprenderam rapidamente que estavam pagando a mesma quantia por uma amostra de computação rápida e simples ou talvez 20, 30 ou até 100 vezes maior. Se eles não fossem tão cuidadosos ou implacavelmente eficientes, não importava. A conta era a mesma.

Essa liberdade preguiçosa se foi. À medida que mais e mais plataformas sem servidor competem, o tamanho do menor grão de computação está ficando menor. A AWS simplesmente parou de arredondar para 100 ms e começou a faturar em incrementos de 1 ms. Agora, limpar seu código e observar desvios lentos será refletido em uma conta mais baixa.

Uma dieta para o sistema operacional

O sistema operacional moderno é uma máquina Rube Goldberg maravilhosa projetada para fazer malabarismos para trabalhos de impressão, videogames, edição de documentos e inúmeras outras tarefas. Você já se perguntou por que estava inicializando suas instâncias de nuvem com todo o código pronto para lidar com essas tarefas?

Unikernels são uma forma de eliminar toda essa complexidade. Depois de colocar seu código em execução, o compilador construirá um pacote muito menor que permanecerá no topo do hipervisor padrão. Os proponentes não apenas comemoram a eficiência de deixar de fora todas essas bibliotecas extras, mas eles apontam que a superfície de ataque é muito menor, tornando-as mais fáceis de proteger.

Ou por que não obter seu sistema operacional mínimo diretamente da AWS ou do Google? O Container-Optimized OS do Google e o Amazon’s Bottlerocket aplicam o paradigma de virtualização tradicional ao sistema operacional, com contêineres de SO virtual e um mínimo de Linux desempenhando o papel de hipervisor. Eles brilham por envolver microsserviços que fazem uma pequena coisa, sem depender de grande parte da funcionalidade do sistema operacional.

Funções de open source

Outra maneira de simplificar o trabalho de implantação na nuvem é permitir que os desenvolvedores escrevam uma função simples e deixar todo o outro trabalho para a própria nuvem. Nos últimos anos, todas as principais nuvens revelaram suas próprias ferramentas que permitem que um pequeno fragmento de código, uma única função, tome algumas decisões e processe alguns dados. Esses foram avanços maravilhosos, especialmente para as pessoas que mesclam muitos serviços em um grande produto.

A única desvantagem era o aprisionamento do fornecedor. Embora as funções pudessem ser escritas em muitas linguagens, a interação com o framework era proprietária. Agora, há uma série de projetos de código aberto interessantes - OpenWhisk, OpenFaaS, Kubeless, Knative, Fission - trazendo funções como serviço para qualquer máquina de sua escolha.

Chips da Arm

Eles não são apenas para amantes do Mac. A Amazon tem uma linha de servidores rodando seus próprios chips Gravitron com núcleos Arm que prometem ser 40% mais baratos de operar. Claro que existem algumas ressalvas. Você precisa recompilar seus executáveis para rodar na plataforma Arm, a menos que esteja trabalhando em linguagens de nível superior como Java, JavaScript (Node.js) ou PHP (Drupal, WordPress, etc.).

Descobrir se você verá uma grande economia dependerá muito da natureza do seu cálculo e da carga. Alguns benchmarks colocam as máquinas Gravitron na mesma faixa geral das máquinas originais baseadas em Intel. Outros sugerem que as instâncias baseadas em Arm são um pouco menos capazes, portanto, mais adequadas para executar código usado levemente que pode aproveitar a economia de custo sem executar mais tempo.

Você deve fazer a troca? A única maneira de descobrir é testando suas próprias cargas de trabalho em ambientes próximos aos de produção para ver se eles podem aproveitar a economia.

Bancos de dados “faz-tudo”

Há muito tempo, os programadores do Fortran viram o Fortran adicionar novos recursos um após o outro e brincar que não sabiam qual seria a linguagem de programação do futuro, mas que seria chamada de "Fortran". Hoje, a mesma coisa pode ser dita para bancos de dados, a microfunção original como uma camada de serviço. Há muito tempo, os bancos de dados armazenavam tabelas retangulares. Agora eles fazem quase tudo.

Os desenvolvedores estão começando a notar o quanto está sob o capô. O PostgreSQL 11, por exemplo, tem seu próprio JIT para compilar consultas e suas funções embutidas agora têm a capacidade de confirmar ou reverter transações. O banco de dados fala JSON e, portanto, é mais fácil do que nunca construir um microsserviço completo sem sair dos limites do banco de dados.

Outros bancos de dados, como o Azure Cosmos DB, combinam APIs de SQL, MongoDB, Cassandra e gráfico. Outros ainda, como o Firebase do Google, oferecem a oportunidade de armazenar os dados e fornecê-los aos clientes por meio de replicação. Eles mesclam distribuição com armazenamento. Existem dezenas de novos bancos de dados como este, trazendo novas funcionalidades para o termo utilitário básico "banco de dados".

Novas funções para aplicativos de escritório

As grades cheias de números, letras e fórmulas são a língua franca para os gerentes e contadores de feijão, não os programadores, mas eles estão recebendo mais respeito como um formato de arquivo inteligente e uma maneira de abrir a nuvem para as massas. O movimento “no code” está cortando os programadores do loop e alcançando os macrojóqueis diretamente com ferramentas que transformam planilhas em aplicativos. O Google, por exemplo, tem se gabado de que uma empresa construiu e implantou mais de 35 aplicativos de negócios “sem habilidades de codificação” usando o AppSheet.

Não é apenas a planilha. Todo o pacote de aplicativos de escritório agora abriga mais e mais aplicativos personalizados que administram uma empresa. Em vez de construir e implantar aplicativos em instâncias autônomas, alguns programadores estão criando aplicativos que se integram com os processadores de texto, criadores de apresentação de slides e outras ferramentas genéricas nos universos do Google ou Microsoft. Quando as conexões existem, fica mais fácil a vida de todos na empresa que passam a maior parte do tempo lidando com documentos e e-mail.

Computação na borda

A nuvem continua a evoluir, levando cada vez mais poder de computação para as bordas da rede. Empresas como a Cloudflare já oferecem serviços computacionais inteligentes. Os Cloudflare Workers executarão código JavaScript, Rust, C ou C++ em um de seus mais de 200 data centers localizados o mais próximo possível dos usuários. Também existem bancos de dados locais.

O serviço AWS for the Edge da Amazon oferece uma oportunidade semelhante de mover seu código para mais perto dos usuários. Aqueles que usam os serviços de machine learning Amazon SageMaker podem empurrá-los dos principais data centers para as bordas. A Amazon agora está enfatizando sua conexão com as redes celulares 5G emergentes, sem dúvida esperando que os dispositivos móveis passem de consumidores casuais de dados caros para os principais portais por meio dos quais as pessoas navegam na Internet.

O Azure IoT Edge da Microsoft tem como objetivo a explosão de dispositivos com recursos que dependem da nuvem. O serviço Custom Vision, por exemplo, traz computação de borda para todas as redes de câmeras em crescimento.

Existem dezenas de exemplos como este que estão sendo desenvolvidos à medida que a nuvem cresce e se insinua por toda parte. A nuvem já foi limitada a uma coleção centralizada de edifícios de colocation de dados com instâncias alugáveis, mas agora está se movendo para a rede. Depois disso? A internet das coisas? O forno inteligente da cozinha? Os computadores em nossos carros?

Enquanto for mais fácil alugar do que possuir, a nuvem será adotada por qualquer pessoa que precise de computadores e armazenamento de dados para levar sua empresa adiante.

Snippets HTML5 default Intervenções CW

Este anúncio desaparecerá em:

Fechar anúncio

15