MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Vercel cria nova conexão de banco de dados para cada solicitação

Resumo


As funções sem servidor no Vercel funcionam como um processo independente. Embora seja possível armazenar em cache a conexão "por função", não é uma boa ideia implantar uma biblioteca pronta para servidor em um ambiente sem servidor. Aqui estão algumas perguntas que você precisa responder:
  • Sua estrutura ou biblioteca de banco de dados está armazenando a conexão em cache?
  • Seu código está preparado para Serverless?
  • Para que tipo de carga de trabalho o Vercel é otimizado?

Outro contexto


Vercel é uma excelente plataforma para seu frontend que usaria Serverless Functions como auxiliares. A CDN disponível em conjunto com o fluxo de trabalho torna o processo de implantação muito rápido e permite que você se mova mais rapidamente. A implantação de uma API completa ou carga de trabalho de servidor nunca será uma boa ideia. Vamos supor que eu precise usar MySQL com Vercel. Em vez de mysql , você deve usar mysql-serverless , que é otimizado para as primitivas sem servidor. Mesmo com isso em mente, provavelmente será mais barato usar apenas uma VM/Contêiner para a API, dependendo do nível de solicitações que você espera. Portanto, teríamos a seguinte solução ideal:
Frontend (Vercel - Serverless) --> Backend (Serverful - External provider) --> DB

Isenção de responsabilidade:no momento, trabalho para a Vercel.