-2
votes

Comment prévenir l'étranglement avec la coupe-feu lorsque vous exécutez une grande quantité de lecture?

Je suis un utilisateur de plan Google Blaze et j'ai un serveur Express contenant un point final simple qui ne fait que tirer de Firestore. Pendant les heures de circulation élevées, je peux récupérer plus de 5000 demandes de lecture simultanées qui émettent finalement cette erreur ci-dessous,

Erreur: 8 Resource_expausted: quota dépassé.

Après que j'attends quelques minutes, je suis en mesure de lire la collection à nouveau.

mise à jour: Ne savez pas pourquoi les valeurs descendantes sans explications ... mais j'ai aussi un système mutex que je pense conduire à la frappe de ces limites. Si cela ne parvient pas à verrouiller un document à l'aide des transactions, il descend un tableau d'instantanés jusqu'à ce qu'un verrou soit donné. Si le tableau devient vide, il fait une autre lecture à Firebase pour un autre ensemble de n documents, qui n'est que de 50 dans mon cas.

Donc, ma question est, y a-t-il une limite sur la quantité de transactions ou des lectures par seconde que nous sommes autorisés à faire à partir d'une seule connexion (mon serveur Express)? Je ne pense pas que cela soit indiqué n'importe où dans les documents.


0 commentaires

3 Réponses :


0
votes

On dirait que vous atteignez l'une des limites de lecture / écriture / transaction indiquées dans Page .

pourrait être celui-ci écrit maximum par seconde par base de données: 10 000 (jusqu'à 10 mib par seconde) mais je devine seulement ...


3 commentaires

Je considérais qu'avant de poster ici, je suis coincé à la fois de lire et d'écrire. Je suis complètement verrouillé. Je n'écris que au plus 100 documents par seconde. J'ai essayé d'ouvrir un billet avec Google, mais cela me demande de vous inscrire une organisation.


Oui mais vous êtes limité à une écriture par document par seconde. Pourriez-vous avoir un chevauchement dans les demandes qui conduiraient au même document sauvegardé simultanément?


Il est 100 écrit à la collection en faisant de nouveaux documents. Pas de chevauchement, je crois que cela a été déclenché par des lectures excessives. Je n'écris pas à la base de données beaucoup à l'époque.



0
votes

Pour répondre à votre question, selon Ce lien , le maximum concurrent Les connexions pour les clients mobiles / Web par base de données Firebase sont de 1 000 000. Ainsi, vos connexions semblent ne pas dépasser les limites.

Pour le projet BLAZE BLAZE , la limite de la lecture de documents Firestore Cloud est 50k / jour , puisque l'utilisation gratuite de Spark Plan est incluse dans le plan BLAZE. La limite est telle, sauf si vous avez Définissez toute limite de budget dans votre compte de facturation . L'utilisation sera réinitialisée à minuit de PST. Si vous mettez à niveau votre plan dans le plan de flamme, la limite est de 250 km / jour.

ici Vous pouvez lire sur les quotas et les limites officiels du cloud Firestore, tels que le document maximum Lit, taille maximale pour un document, qui peut être utile. En outre, vous pouvez Surveiller votre utilisation de la base de données et vérifier les limites de votre plan de "utilisation" "Onglet dans la console Firebase. Vous pouvez vérifier l'utilisation de la période de facturation actuelle, les 30 derniers jours, ou les dernières 24 heures.

La surveillance de StackDriver est également un outil pratique pour la surveillance Document lit / écrit / supprime, connexions actifs et auditeurs instantanés.

Une bonne pratique, si vous souhaitez éviter des frais inattendus sur votre compte de facturation, il s'agirait de Créez une stratégie d'alerte basée sur les métriques de cloud Firestore, comme indiqué ici.

En outre, vous pouvez estimer et vérifier vos coûts mensuels sur le "plan BLAZE" en utilisant ce Calculateur de plan Blaze .


3 commentaires

J'ai déjà suivi les documents avant de poster. Je ne suis pas un utilisateur de plan d'étincelles. Aucun de ces limites ne m'a appliqué. J'ai déjà évalué mon quota et son comment je n'ai frappé aucune de mes limites.


Je m'excuse pour ma faute de faute de frappe. J'ai édité ma réponse: "Pour le projet Plan BLAZE, la limite de la lecture de documents Firestore Cloud est de 50k / jour, puisque l'utilisation gratuite de Spark Plan est incluse dans le plan BLAZE."


Vous êtes autorisé plus de 50 000 lectures par jour, il suffira de payer après avoir passé cela. Je crois que mon problème est une IP fait trop de demandes.



0
votes

Pour quiconque circule dans ce numéro à l'avenir, veuillez consulter vos paramètres de budget de moteurs d'application sous "Paramètres de l'application". Je fixe la limite de dépenses quotidienne pour éviter les frais inutiles pendant les tests et cela a glissé mon esprit. J'ai augmenté le budget et l'erreur est actuellement partie.

AWS m'envoie généralement un email lorsque mon budget a été dépassé.


0 commentaires