Tag: computação sem servidor

  • Serverless Computing: o que é a computação sem servidor

    Serverless Computing, ou computação sem servidor, é um método de fornecimento de serviços de back-end baseado em como eles são utilizados. Nele, uma empresa que contrata um fornecedor sem servidor é cobrada com base no uso, não por uma quantidade fixa de largura de banda ou pelo número de servidores.

    Na prática, estamos falando de uma tendência cada vez mais adotada pelas organizações — crescimento de 30% ao ano, segundo estudo da Witekio. E, portanto, é bastante aconselhável saber mais sobre essa abordagem.

    Continue lendo para entender!

    O que é Serverless Computing?

    Serverless Computing surgiu como um novo paradigma para a implantação de aplicativos e serviços. Representa uma evolução dos modelos de programação em nuvem, abstrações e plataformas.

    Uma empresa que usa serviços de back-end de um fornecedor sem servidor é cobrada com base na computação utilizada e não precisa reservar e pagar por uma quantidade fixa de largura de banda ou número de servidores. Isso porque o serviço pode ser dimensionado automaticamente quando necessário. 

    Vale notar que, embora os serviços sejam chamados de “sem servidor”, os servidores físicos ainda são utilizados, mas os usuários não precisam estar cientes deles.

    Nos primeiros dias da internet, qualquer pessoa que desejasse criar uma aplicação web precisava possuir o hardware físico para rodar um servidor, uma tarefa complicada e cara.

    Mais tarde apareceu a computação em nuvem (Cloud Computing), em que um número fixo de servidores ou quantidades de espaço podiam ser alugados remotamente. 

    Os desenvolvedores e as empresas que alugavam essas unidades fixas de espaço no servidor geralmente compravam espaço extra. Elas queriam garantir que um pico de tráfego ou de atividade não excedesse limites mensais e interrompesse aplicativos. Isso significa que boa parte do espaço de servidor pago pode ser desperdiçado. 

    Para resolver o problema, os fornecedores de nuvem introduziram modelos com dimensionamento automático. No entanto, mesmo esse tipo de modelo poderia acabar saindo muito caro se ocorresse um pico de atividade indesejado, como um ataque DDoS.

    A computação sem servidor permite a compra de serviços de back-end com base em um esquema flexível “pague pelo que usar”. É como migrar de um plano de dados de celular com limite fixo mensal para um que cobra apenas por cada byte de dados que é realmente usado.

    Também é bom saber que o termo “sem servidor” não deve ser interpretado ipsis litteris, já que os servidores que fornecem esses serviços de back-end continuam existindo. O X da questão é que quem lida com todas as questões de espaço e infraestrutura é o fornecedor.

    Quais são as vantagens do modelo Serverless Computing?

    • Custos mais baixos — a computação sem servidor geralmente é muito econômica, já que o modelo de serviços de back-end na nuvem dos provedores tradicionais (alocação de servidores) geralmente significa que o usuário acaba pagando pelo espaço não utilizado ou pelo tempo ocioso da CPU.
    • Escalabilidade simplificada — os desenvolvedores que usam arquitetura sem servidor não precisam se preocupar com as políticas de aumento da capacidade de seu código. O fornecedor sem servidor se encarrega de aumentar os serviços de acordo com a demanda.
    • Código de back-end simplificado — os desenvolvedores podem criar funções simples que rodam independentemente para executar uma única finalidade, como fazer uma chamada de API.
    • Retorno mais rápido — a arquitetura sem servidor pode reduzir significativamente o tempo de lançamento no mercado. Ao invés de demandar um processo complicado de implantação para implementar correções de bugs e novas funcionalidades, os desenvolvedores podem adicionar e modificar o código gradualmente.

    Resumindo

    Serverless Computing, a computação sem servidor, oferece uma série de vantagens sobre a infraestrutura tradicional baseada em nuvem ou centrada em servidores. 

    Para muitos desenvolvedores, as arquiteturas sem servidor oferecem maior escalabilidade, maior flexibilidade e tempo de lançamento mais rápido, tudo isso a um custo reduzido. 

    Com as arquiteturas sem servidor, os desenvolvedores não precisam se preocupar em comprar, provisionar e gerenciar servidores de back-end. Entretanto, a computação sem servidor não é uma solução mágica para todos os desenvolvedores de aplicativos web.

    Que tal, você já conhecia o conceito de Serverless Computing? Para se aprofundar ainda mais no tema, baixe agora mesmo o eBook que acabamos de lançar!

    Clique para fazer download.
  • AWS Serverless: os benefícios da arquitetura sem servidor

    AWS Serverless, a arquitetura sem servidor da AWS é uma maneira de criar e executar serviços e aplicativos sem precisar gerenciar a infraestrutura. 

    O aplicativo de usuários ainda é executado em servidores, mas os servidores são gerenciados pela AWS. Portanto, é um método que fornece suporte para serviços de back-end. 

    Além disso, os usuários pagam com base em seus cálculos, e nada mais é cobrado apenas pelos serviços utilizados. Embora sejam chamados de serverless, os servidores físicos ainda são usados, mas os desenvolvedores não precisam ter conhecimento disso. 

    Continue lendo para entender!

    Por que usar a arquitetura sem servidor da AWS 

    A arquitetura sem servidor da AWS oferece várias vantagens sobre a infraestrutura tradicional centrada em servidor ou baseada em nuvem. 

    Por exemplo, dá aos desenvolvedores maior escalabilidade, rapidez no lançamento, mais flexibilidade e tudo isso a um custo reduzido, pois o usuário paga apenas pelos serviços utilizados. 

    Logo, um desenvolvedor pode se concentrar em seu produto principal em vez de fazer malabarismos entre gerenciar e operar servidores ou tempos de execução e desenvolver o aplicativo. Ajuda a diminuir a latência.

    Mas tem mais!

    O usuário pode criar facilmente um aplicativo sem servidor com um pipeline de implantação automatizado no console do AWS Lambda

    Os serviços da AWS integrados ao AWS SAM são usados ​​para automatizar implantações. O AWS SAM ajuda a implantar novas versões da função Lambda e cria automaticamente aliases que apontam para a versão mais recente. 

    Se as distribuições graduais forem habilitadas por meio do AWS SAM, um recurso do CodeDeploy será criado automaticamente para o usuário. 

    Os principais serviços da arquitetura sem servidor da AWS 

    Existem vários serviços para computação sem servidor da AWS, alguns deles estão listados abaixo!

    Serviços de computação sem servidor 

    AWS Serverless fornece o AWS Lambda que permite que o usuário execute código sem gerenciar servidores, e o usuário paga apenas pelos cálculos usados. 

    O Lambda Edge permite que o usuário execute funções do Lambda nos pontos de presença da AWS em resposta a eventos do Amazon CloudFront AWS Fargate é um mecanismo de computação sem servidor criado para contêineres. 

    Ele ajuda a dimensionar e gerenciar a infraestrutura necessária para executar a caixa do usuário.

    Serviços de armazenamento sem servidor

    O Amazon S3 oferece a uma equipe de desenvolvimento um armazenamento de objetos durável, seguro e altamente escalável. É fácil de usar e portátil.

    O Amazon EFS oferece armazenamento de arquivos puro, escalável e elástico. É auto-ajustável e cresce e diminui conforme a demanda do usuário.

    Serviços de armazenamento de dados  sem servidor

    A AWS fornece o Amazon DynamoDB, que é um serviço de banco de dados No-SQL rápido e flexível para todos os aplicativos; ele precisa de latência de milissegundos em qualquer escala.

    Já o Amazon Aurora Serverless é uma configuração de dimensionamento automático sob demanda (sistema compatível com MySQL). Neste banco de dados irá iniciar e desligar automaticamente. O sistema será dimensionado de acordo com as necessidades da aplicação do usuário.

    Serviços de proxy de API 

    Amazon API Gateway é um serviço totalmente gerenciado que facilita a tarefa dos desenvolvedores de criar, manter, publicar, monitorar e proteger APIs em qualquer escala. 

    Os gateways permitem processar milhares de chamadas de API simultâneas e ajudam o usuário a lidar com gerenciamento de tráfego, autorização e controle de acesso, monitoramento e gerenciamento de versão de API.

    Serviços de Integração de Aplicativos 

    • Amazon SNS — serviço de mensagens pub/sub totalmente gerenciado que ajuda a desacoplar e dimensionar microsserviços, sistemas distribuídos e aplicativos sem servidor.
    • Amazon SQS — serviço de mensagens totalmente gerenciado que ajuda a desacoplar e dimensionar microsserviços, sistemas distribuídos e aplicativos sem servidor.
    • AWS AppSync — ajuda a simplificar o desenvolvimento de aplicativos, permitindo que você crie uma API GraphQL flexível, ajuda a proteger o acesso, a manipulação e combina dados de uma ou mais fontes de dados.
    • Amazon EventBridge — serviço de barramento de eventos para computação sem servidor que ajuda a facilitar o acesso a dados de aplicativos de várias fontes e enviá-los para o ambiente AWS do usuário.

    Serviços de Orquestração 

    • AWS Step Functions — ajuda a facilitar a coordenação dos componentes de aplicativos e microsserviços distribuídos; ele usa fluxos de trabalho visuais para o mesmo.

    Serviços de análise 

    • Amazon Kinesis — usado para transmitir dados na AWS. O Kinesis oferece ótimos serviços para ajudar a carregar e analisar os dados de streaming.
    • Amazon Athena —serviço interativo que facilita a análise dos dados no Amazon S3 usando SQL padrão. Athena não tem servidor.

    Serviços de ferramentas para desenvolvedores 

    A AWS fornece ferramentas e serviços que ajudam os desenvolvedores no processo de desenvolvimento de aplicativos sem servidor. 

    Tais como ferramentas para integração contínua, entrega, teste, implantação, monitoramento e diagnóstico, SDKs, estruturas e plugins de ambiente de desenvolvimento integrado.

    Benefícios de usar a arquitetura AWS Serverless

    A arquitetura sem servidor da AWS é uma benção, pois ajuda o desenvolvedor a concentrar todo o seu poder no desenvolvimento, em vez de se preocupar com a implantação e o gerenciamento de servidores. 

    Ela pode ser usada para executar ou construir qualquer aplicativo moderno e aumenta a agilidade, ao mesmo tempo em que ajuda a reduzir o custo do seu produto.

    Confira, a seguir, uma síntese dos principais benefícios:

    • Os servidores não precisam de atenção para instalação e manutenção.
    • O pagamento é de acordo com a taxa de transferência, tornando-o valor para o dinheiro.
    • Você pode escolher as configurações apropriadas de acordo com a necessidade do seu produto, pagando apenas pelas funções que usar.
    • Ajuda o desenvolvedor a se concentrar apenas no código, dando-lhe tempo suficiente para inovar o programa ou interagir com os clientes para obter feedbacks dos clientes, aumentando assim o tempo de lançamento no mercado.
    • Você pode escrever código e, quando terminar tudo, pode implantar o sistema imediatamente, e ele estará disponível para o mundo em poucos minutos. Assim, não há necessidade de fazer nenhum esforço para criar e gerenciar servidores.

    Que tal, nós conseguimos te mostrar quais são os benefícios da arquitetura AWS Serverless? Se precisar de ajuda para implementá-la na sua empresa, faça contato conosco! Para se aprofundar ainda mais no tema, baixe agora o eBook Computação sem Servidor!

    eBook Computação sem Servidor
    Clique para fazer download