Introdução
Como engenheiro de software na Tailwind Trader"s, você é responsável por um aplicativo no site de planejamento de férias da sua empresa que ajuda os clientes a adicionar, editar, exibir e remover planos em suas listas de desejos de férias. Sua API, que é hospedada em um servidor que executa o Node.js e o Express, é essencial para o sucesso do aplicativo. É desafiador gerenciar o servidor e dimensionar o aplicativo conforme necessário, minimizando os custos.
Aplicativos baseados em servidor
Para usar seu aplicativo e servidor Express atual, você precisa:
- Escreva o seu código, incluindo o middleware e a lógica necessários para iniciar e executar o servidor.
- Configurar e manter o hardware e o software do servidor físico.
- Gerenciar o dimensionamento do aplicativo à medida que a demanda flutua.
- Gerenciar os custos de implantação e execução do servidor.
Aplicativos sem servidor
Mover o aplicativo de planejamento de férias para uma arquitetura sem servidor, como o Azure Functions, pode oferecer vários benefícios.
Arquiteturas sem servidor podem reduzir significativamente a sobrecarga do gerenciamento de servidores. Tarefas como esta não são mais uma preocupação:
- Configurar e manter o hardware e o software do servidor.
- Gerenciar a colocação em escala do servidor com base na demanda.
- Manipular o custo de implantação e operação do servidor.
Ao remover essas tarefas, a equipe de engenharia de software pode se concentrar mais no desenvolvimento e na melhoria dos recursos do aplicativo em vez do gerenciamento de infraestrutura.
As arquiteturas sem servidor aumentam e diminuem automaticamente com base na demanda, garantindo que o aplicativo possa lidar com os tempos de pico de uso sem intervenção manual. Isso pode levar à redução de custos, pois você só paga pelo tempo de computação que realmente usa.
A transição para sem servidor não requer necessariamente uma reescrita completa do aplicativo. Como você pode mover código não diretamente vinculado à estrutura, como o Express, essa migração é uma solução potencialmente eficiente e econômica para obter escalabilidade e desempenho do aplicativo de planejamento de férias.