MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Vercel crée une nouvelle connexion à la base de données pour chaque requête

Résumé

Les fonctions sans serveur sur Vercel fonctionnent comme un processus autonome. Bien qu'il soit possible de mettre en cache la connexion "par fonction", ce n'est pas une bonne idée de déployer une bibliothèque prête pour le serveur dans un environnement sans serveur. Voici quelques questions auxquelles vous devez répondre :

  • Votre infrastructure ou votre bibliothèque de bases de données met-elle en cache la connexion ?
  • Votre code est-il prêt pour Serverless ?
  • Pour quel type de charge de travail Vercel est-il optimisé ?

Autre contexte

Vercel est une excellente plate-forme pour votre frontend qui utiliserait des fonctions sans serveur comme aides. Le CDN disponible en conjonction avec le workflow rend le processus de déploiement très rapide et vous permet d'aller plus vite. Déployer une API complète ou une charge de travail serveur ne sera jamais une bonne idée. Supposons que j'ai besoin d'utiliser MySQL avec Vercel. Au lieu de mysql , vous devez utiliser mysql-serverless , qui est optimisé pour les primitives sans serveur. Même dans cet esprit, il sera probablement moins cher d'utiliser simplement une machine virtuelle/un conteneur pour l'API en fonction du niveau de demandes que vous attendez. Par conséquent, nous aboutirions à la solution idéale suivante :

Frontend (Vercel - Serverless) --> Backend (Serverful - External provider) --> DB

Avis de non-responsabilité :en ce moment, je travaille pour Vercel.