O que é uma estrutura sem servidor?

Uma estrutura sem servidor é um conjunto de serviços que permite às equipes de DevOps criar e escrever código sem precisar gerenciar a infraestrutura subjacente necessária para o desenvolvimento de aplicações. Ainda há servidores envolvidos no desenvolvimento sem servidor, mas eles são provisionados, configurados, mantidos e atualizados por um provedor de serviços em nuvem.

Uma estrutura sem servidor é dimensionada automaticamente. Os clientes não reservam nem pagam por um número fixo de servidores, mas sim são cobrados com base na quantidade de computação necessária. Implantadas em contêineres, as aplicações sem servidor são iniciadas automaticamente sempre que são chamadas. O provedor de serviços em nuvem é responsável por garantir que as aplicações tenham os recursos necessários e que as equipes de DevOps possam criar e executar software à vontade.

As estruturas sem servidor mais comuns incluem AWS Lambda, Microsoft Azure Functions e Google Cloud Functions.

Como funciona a computação sem servidor?

Com uma estrutura sem servidor, os desenvolvedores escrevem o código da aplicação front-end e a lógica de negócios e o implantam em contêineres gerenciados pelo provedor de serviços em nuvem. O provedor de nuvem é responsável por ativar e provisionar os recursos necessários sob demanda sempre que o código for executado e, em seguida, reduzir para zero quando a execução for interrompida. Os provedores também lidam com todas as tarefas relacionadas à configuração de servidores, aplicação de patches, balanceamento de cargas e gerenciamento de segurança para a infraestrutura de servidores subjacente.

Os casos de uso comuns sem servidor incluem automação de processos de negócios, chatbots, processamento de mídia, Internet das Coisas (IoT) e criação de APIs para aplicações web.

O que é uma função como serviço (FaaS)?

FaaS é um tipo de serviço de computação em nuvem que também permite aos desenvolvedores criar, executar e gerenciar partes modulares de código como funções, sem a necessidade de gerenciar a infraestrutura subjacente. A FaaS permite que os desenvolvedores executem aplicações acionadas por eventos na edge e sob demanda, pagando pelos processos do servidor apenas enquanto a aplicação estiver em execução. Esses recursos facilitam o dimensionamento do código e a implementação de microsserviços de maneira econômica.

Quais são os benefícios de uma estrutura sem servidor?

Uma estrutura sem servidor oferece vantagens significativas para as equipes de DevOps em relação a ambientes alternativos.

  • Redução dos custos. Como uma estrutura sem servidor cobra apenas pelo tempo de computação necessário para executar aplicações, as organizações acabam pagando menos do que por outros serviços baseados em nuvem, nos quais os servidores estão constantemente em funcionamento e devem ser gerenciados de forma contínua.
  • Escalabilidade facilitada. As estruturas sem servidor podem ser facilmente dimensionadas para acomodar picos de demanda e novas oportunidades de negócios, sem que as equipes de DevOps precisem se preocupar com o gerenciamento de servidores ou segurança à medida que as operações aumentam.
  • Tempo mais rápido de introdução no mercado. Os ambientes sem servidor podem ser provisionados em minutos ou horas, permitindo que as organizações acelerem sua velocidade de comercialização.
  • Menos latência. Com a arquitetura sem servidor, o código pode ser executado em qualquer servidor, incluindo servidores de edge que estão mais próximos dos usuários finais para minimizar a latência.
  • Maior flexibilidade. As plataformas sem servidor permitem que as equipes de DevOps criem aplicações em qualquer linguagem ou estrutura de desenvolvimento.

Quais são as desvantagens de uma estrutura sem servidor?

  • Problemas de segurança. Como os provedores de serviços em nuvem são responsáveis por manter a segurança dos ambientes sem servidor, as organizações podem não ter visibilidade total sobre a segurança.
  • Dificuldades em testar e depurar. Como os desenvolvedores não têm visibilidade dos processos de back-end, testar e depurar o código pode ser mais complicado.
  • Processos de longa execução. Embora o modelo sem servidor seja ideal para executar aplicações de curta duração que realizam um serviço e depois param, executar aplicações por períodos mais longos pode não ser tão econômico em uma estrutura sem servidor.
  • Dependência de um único fornecedor. Atribuir a um provedor de serviços em nuvem a responsabilidade por toda a infraestrutura subjacente pode dificultar a mudança de provedor quando necessário.

O que é sem servidor em comparação com IaaS, PaaS e BaaS?

Embora uma estrutura sem servidor tenha algumas semelhanças com outros modelos de serviços em nuvem, existem diferenças significativas que tornam a estrutura sem servidor mais adequada para determinadas situações.

  • Infraestrutura como serviço (IaaS). Com as ofertas de IaaS , as organizações devem fazer estimativas antecipadas e fundamentadas sobre suas necessidades futuras de recursos em nuvem, o que pode levar ao provisionamento excessivo, à subutilização e a custos adicionais. Em contrapartida, a capacidade em estruturas sem servidor é consumida apenas quando as aplicações são iniciadas, e a organização deixa de pagar quando a aplicação é concluída.
  • Plataforma como serviço (PaaS). Assim como as estruturas sem servidor, as ofertas PaaS fornecem acesso a ferramentas de desenvolvimento de aplicações sem exigir que os desenvolvedores gerenciem o back-end. No entanto, os preços das soluções PaaS não são tão precisos quanto os das soluções sem servidor, e as ofertas PaaS podem não ser tão facilmente escalonáveis.
  • Back-end como serviço (BaaS). Assim como as estruturas sem servidor, as soluções BaaS permitem que os desenvolvedores evitem o gerenciamento de servidores e infraestrutura de back-end, terceirizando essas tarefas para um provedor de serviços em nuvem. No entanto, as soluções BaaS podem não ser automaticamente escaláveis como as estruturas sem servidor. Além disso, como as ofertas de BaaS não são orientadas por eventos como as soluções sem servidor, elas podem consumir mais recursos do servidor, aumentando os custos.

Perguntas frequentes (FAQ)

A computação sem servidor é um tipo de modelo de computação em nuvem no qual os provedores de serviços em nuvem gerenciam a infraestrutura de computação, como servidores, armazenamento e redes, e fornecem acesso às organizações pela Internet. Os clientes consomem recursos em nuvem sob demanda, pagando conforme o uso, e o provedor de nuvem é responsável pela manutenção, atualização e segurança do serviço. No entanto, à medida que as necessidades comerciais e os requisitos das aplicações mudam, o cliente é responsável por providenciar mais capacidade. Na computação sem servidor, o provedor de nuvem é responsável tanto pela infraestrutura de nuvem quanto pelo planejamento de capacidade, para garantir que o cliente tenha capacidade suficiente para dimensionar as aplicações conforme necessário.

A segurança sem servidor é o conjunto de práticas, programas e tecnologias que as organizações implementam para proteger a arquitetura de computação sem servidor. A segurança sem servidor exige uma mudança na forma como as organizações encaram a segurança das aplicações e uma nova abordagem para controlar o acesso e proteger os dados contra:

  • Injeção de dados de eventos que fornece entradas sem determinar se elas são maliciosas
  • Privilégios excessivos que podem ser comprometidos por agentes mal-intencionados
  • Configuração incorreta que expõe o ambiente de TI a ataques
  • Autenticação corrompida que permite que invasores explorem vulnerabilidades nos mecanismos de autenticação para obter acesso não autorizado
  • Código inseguro que introduz vulnerabilidades que os hackers podem explorar
  • Uma superfície de ataque maior que dificulta a obtenção de visibilidade
  • Dependências de terceiros que representam um risco para dados ou recursos confidenciais

Contêineres são unidades de software leves e portáteis empacotadas com as bibliotecas e dependências necessárias que permitem que a aplicação seja executada em qualquer lugar, em qualquer máquina. Como uma maneira simplificada de criar, testar e implantar aplicações em vários ambientes, os contêineres melhoram a eficiência dos esforços de DevOps e fornecem maior consistência entre os ecossistemas de TI. Com os microsserviços, os contêineres são uma parte importante das aplicações nativas da nuvem.

 

Por que os clientes escolhem a Akamai

A Akamai é a empresa de cibersegurança e computação em nuvem que potencializa e protege negócios online. Nossas soluções de segurança líderes de mercado, inteligência avançada contra ameaças e equipe de operações globais oferecem defesa em profundidade para garantir a segurança de dados e aplicações empresariais em todos os lugares. As abrangentes soluções de computação em nuvem da Akamai oferecem desempenho e acessibilidade na plataforma mais distribuída do mundo. Empresas globais confiam na Akamai para obter a confiabilidade, a escala e a experiência líderes do setor necessárias para expandir seus negócios com confiança.

Explore todas as soluções de segurança da Akamai