Executando verificação de segurança...
5

Desenvolvimento de Aplicações Serverless: Mitos e Realidades

Olá, jovem programador! Hoje vamos explorar um tópico fascinante no mundo da programação: o desenvolvimento de aplicações serverless. Vamos descobrir juntos o que é tudo isso!

O que é Serverless?

Serverless, em tradução literal, significa "sem servidor", mas não quer dizer que não há servidores envolvidos. A ideia por trás do serverless é que você, como desenvolvedor, não precisa se preocupar com a infraestrutura de servidores. Em vez disso, você se concentra apenas na lógica do seu aplicativo. Os provedores de serviços cloud, como a Amazon Web Services (AWS), Google Cloud Platform e Microsoft Azure, gerenciam os servidores para você.

Mitos e Realidades

Mito 1: Não há servidores envolvidos

Isso é quase verdade. Embora você não precise gerenciar diretamente os servidores, eles ainda existem nos bastidores. Os provedores serverless cuidam deles, mas é importante saber que os servidores ainda estão lá, trabalhando magicamente.

Mito 2: Sempre mais barato

Serverless pode ser mais econômico para algumas aplicações, mas nem sempre é a opção mais barata. Para aplicativos com uso constante e pesado, pode ser mais vantajoso ter um servidor tradicional. A economia depende do tipo de aplicação e do uso que ela tem.

Realidade: Escalabilidade automática

Uma grande vantagem do serverless é a escalabilidade automática. Se o seu aplicativo receber muitos acessos, os servidores serão automaticamente duplicados para lidar com o aumento da demanda. Isso é ótimo para evitar problemas de sobrecarga.

Realidade: Pagamento por uso

Com o serverless, você paga apenas pelo que usa. Se ninguém está usando o seu aplicativo, você não paga por servidores parados. Isso é bom para startups e projetos menores, pois não há necessidade de grandes investimentos iniciais.

Vantagens e Desafios

Vantagens:

Foco na lógica do aplicativo, não na infraestrutura.
Escalabilidade automática para lidar com muitos acessos.
Economia de custos em alguns cenários.
Rápido tempo de desenvolvimento.

Desafios:

Algumas aplicações podem não se adequar bem ao modelo serverless.
Pode haver limitações em termos de linguagens e bibliotecas suportadas.
Monitoramento e depuração podem ser mais complexos.

Exemplo

Imagine que você quer criar um site para compartilhar receitas. Usando o modelo serverless, você poderia criar uma função que responde a pedidos para listar, adicionar e remover receitas. Quando alguém acessa o site, o provedor serverless gerencia tudo, desde o processamento do pedido até a entrega da resposta.

Compartilhe sua opnião, se você concorda ou não. Você é livre para se expressar!

Carregando publicação patrocinada...
1

A publicação sobre Desenvolvimento de Aplicações Serverless tá demais, não é? É massa ver como a gente pode criar apps sem se estressar com servidores. Se liga, essa parada de "sem servidor" não quer dizer que não tem servidor na jogada, mas relaxa, os provedores de serviços cloud tão cuidando disso pra gente.

E aqueles mitos e verdades? Mandaram bem explicando que, na real, os servidores tão aí, só que na surdina. E que, ó, não é sempre que serverless é mais barato, tudo depende do rolê do teu app. Mas a vibe de escalabilidade automática é top, né? Sem estresse com sobrecarga, que maravilha!

A parada de pagar só pelo que cê usa é sensacional, principalmente pros projetos mais de boa. E, pra cê que tá ligado, o lance de focar na lógica do app e a rapidez no desenvolvimento são altos pontos positivos.

Mas claro, nem tudo são flores. Algumas apps não se dão bem com essa pegada serverless, e tem essas fitas de linguagens e bibliotecas que podem ser limitadas. E ó, monitorar e debugar às vezes pode dar uma confusão.

A cereja no bolo é o exemplo do site de receitas. Imagina só criar uma função que responde a pedidos pro site, tudo no esquema serverless? A parada toda fica na responsa dos servidores lá atrás, e tu só se preocupa com o que importa.

Tamo junto nessa vibe de explorar o serverless! Quem sabe daqui a pouco a gente tá criando apps incríveis sem nem lembrar que servidores existem? 😉💻

1

Embora o serverless e a delegação total aos provedores de cloud possam parecer atraentes devido à sua escalabilidade e manutenção reduzida, existem várias desvantagens significativas. Primeiro, há uma perda de controle sobre o ambiente de execução e o vendor lock-in: Se o AWS deixar de existir amanhã sua aplicação também vai.

Em contraste, um servidor empresarial/domestico robusto e confiável pode ser criado usando uma conexão de internet de fibra óptica e um computador antigo. Este setup pode lidar com muitas aplicações que não necessitam suportar milhares de acessos simultâneos. A latência da rede é geralmente muito menor porque os dados não precisam viajar ao redor do mundo para chegar ao servidor.

Acredito que sua primeira opção sempre deve ser optar pelo self-hested a menos que tenha motivos claros e fortes para escolher outra solução.

1

A grande vantagem do serverless é que ele te tras facilidades, segurança, infraestrutura, vc só precisa se preocupar c/ o problema a ser resolvido.

1

Serveless está sendo cada vez mais difundido aqui, percebo que o mercado nos direciona para esse modelo.

Um ponto que gostaria de levantar é a questão do custo, se em alguns cenários o modelo na arquitetura tradicional baseada em servidores, podem ser mais "baratas". O que nos impede de termos os dois modelos em conjunto, para resolver esse fim?

1

Baita texto! faz menos de 3 meses que eu comecei a trabalhar com serverless direto. Entrei em uma empresa que tem um ecommerce onde toda a parte de logistica deles é feita em um sistema serverless, ta sendo uma paradigma bem massa de trabalhar. Mas já vi e sofri com algumas dores por exemplo timeout porque as requisições estavam demorando, criar uma documentação a nível Swagger não é tão simples, usar um framework mais parudo (Nestjs) pode ser um grande problema (hoje trabalhamos com Node puro). Ainda tenho alguams dúvidas sobre todo esse cenário de serverless, se para o sistema na empresa específico, foi a melhor escolha.