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.