محدودیتهای زیر در ذخیرهسازی دادهها و عملیات در Firebase Realtime Database وجود دارد. برای مقیاسپذیری فراتر از هر یک از این محدودیتها، از چندین پایگاه داده استفاده کنید .
جهانی
| عملیات | حد | توضیحات |
|---|---|---|
| اتصالات همزمان | ۲۰۰۰۰۰* | اتصال همزمان معادل اتصال یک دستگاه تلفن همراه، تب مرورگر یا برنامه سرور به پایگاه داده است. این با تعداد کل کاربران برنامه شما یکسان نیست، زیرا همه کاربران شما به طور همزمان متصل نمیشوند. به عنوان مثال، برنامههایی با 10 میلیون کاربر فعال ماهانه معمولاً کمتر از 200000 اتصال همزمان دارند. حداکثر اتصالات همزمان شما به تعداد کل کاربران و میانگین زمانی که کاربران در برنامه شما میگذرانند بستگی دارد. با این حال، اگر نیاز به مقیاسبندی فراتر از این حد دارید، سعی کنید از چندین پایگاه داده استفاده کنید . *محدودیت طرح اسپارک برای اتصالات همزمان ۱۰۰ است. |
| پاسخهای همزمان ارسال شده از یک پایگاه داده واحد. | تقریباً ۱۰۰۰۰۰ در ثانیه | پاسخها شامل عملیات پخش و خواندن همزمان ارسال شده توسط سرور از یک پایگاه داده واحد در یک زمان معین هستند. محدودیت به بستههای دادهای اشاره دارد که نشان دهنده هر عملیات خواندن یا پخش جداگانه، از جمله اعلانهای فشار، ارسال شده از پایگاه داده هستند. این راهنما برای بار پایدار است، اما پایگاه داده میتواند بارهای ناگهانی بالاتر را نیز مدیریت کند. |
| تعداد توابع ابری که با یک بار نوشتن فعال میشوند | ۱۰۰۰؛ یا برای Cloud Functions نسخه ۲، ۵۰۰ برای هر منطقه | اگرچه محدودیتی برای تعداد عملیات خواندن یا نوشتن که میتوانید از یک تابع واحد انجام دهید وجود ندارد، یک عملیات نوشتن پایگاه داده واحد فقط میتواند ۱۰۰۰ تابع یا ۵۰۰ تابع در هر منطقه برای Cloud Functions نسخه ۲ را انجام دهد. Cloud Functions فقط میتوانند توسط عملیات نوشتن فعال شوند، و هر تابع همچنین میتواند عملیات نوشتن بیشتری را فعال کند که توابع بیشتری را فعال میکنند (هر کدام محدودیت ۱۰۰۰ تابع یا ۵۰۰ تابع در هر منطقه خود را دارند). |
| اندازه یک رویداد واحد که توسط یک نوشتن آغاز میشود | ۱ مگابایت | اندازه یک رویداد شامل مقادیر زیر است:
|
| انتقال دادهها به Cloud Functions | ۱۰ مگابایت بر ثانیه پایدار | میزان دادههای رویدادی که میتوانند به Cloud Functions ارسال شوند. |
درخت داده
| ملک | حد | توضیحات |
|---|---|---|
| حداکثر عمق گرههای فرزند | ۳۲ | هر مسیر در درخت داده شما باید عمقی کمتر از ۳۲ سطح داشته باشد. |
| طول یک کلید | ۷۶۸ بایت | کلیدها با کد UTF-8 رمزگذاری شدهاند و نمیتوانند شامل خطوط جدید یا هیچ یک از کاراکترهای زیر باشند: .$ # [ ] / یا هر کاراکتر کنترلی ASCII (0x00 - 0x1F و 0x7F) |
| حداکثر اندازه یک رشته | ۱۰ مگابایت | دادهها با کد UTF-8 کدگذاری شدهاند. |
خوانده شده
| توضیحات | حد | یادداشتها |
|---|---|---|
| اندازه یک پاسخ واحد که توسط پایگاه داده ارائه میشود | ۲۵۶ مگابایت | اندازه دادههای دانلود شده از پایگاه داده در یک مکان واحد باید برای هر عملیات خواندن کمتر از ۲۵۶ مگابایت باشد. برای انجام عملیات خواندن در یک مکان بزرگتر، یکی از گزینههای زیر را امتحان کنید: |
| کل گرههای موجود در یک مسیر به همراه شنوندهها یا پرسوجوهای روی آن | ۷۵ میلیون* | شما نمیتوانید به مسیرهایی با بیش از ۷۵ میلیون گره، به صورت تجمعی، گوش دهید یا پرسوجو کنید. با این حال، همچنان میتوانید به گرههای فرزند گوش دهید یا پرسوجو کنید. سعی کنید عمیقتر در مسیر کاوش کنید یا برای بخشهای خاصتر مسیر، شنوندهها یا پرسوجوهای جداگانه ایجاد کنید. *شما نمیتوانید مسیرهایی با بیش از 30،000 گره را از نمایشگر داده در کنسول Firebase مشاهده کنید. |
| مدت زمانی که یک پرس و جو میتواند اجرا شود | ۱۵ دقیقه* | یک پرسوجو میتواند تا ۱۵ دقیقه قبل از شکست اجرا شود. *یک کوئری واحد که در کنسول Firebase اجرا میشود، فقط میتواند تا ۵ ثانیه قبل از شکست اجرا شود. |
مینویسد
| توضیحات | حد | یادداشتها |
|---|---|---|
| نرخ نوشتن | ۱۰۰۰ نوشتن در ثانیه | محدودیت تعداد عملیات نوشتن در ثانیه روی یک پایگاه داده. اگرچه محدودیت قطعی نیست، اما اگر بیش از ۱۰۰۰ نوشتن در ثانیه را حفظ کنید، فعالیت نوشتن شما ممکن است محدود به سرعت باشد. |
| اندازه یک درخواست نوشتن واحد به پایگاه داده | ۲۵۶ مگابایت از REST API؛ ۱۶ مگابایت از SDKها. | کل دادهها در هر عملیات نوشتن باید کمتر از ۲۵۶ مگابایت باشد. بهروزرسانیهای چندمسیره نیز مشمول همین محدودیت حجم هستند. |
| بایتهای نوشته شده | ۶۴ مگابایت در دقیقه | کل بایتهای نوشته شده از طریق عملیات نوشتن همزمان روی پایگاه داده در هر زمان معین. |