Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

ملف تعريف قاعدة البيانات الخاصة بك

قياس الأداء الخاص بك قاعدة بيانات Firebase الحقيقي مع قاعدة البيانات أداة التعريف، الذي بني في Firebase CLI . تسجّل أداة ملف التعريف جميع الأنشطة في قاعدة البيانات الخاصة بك خلال فترة زمنية معينة ، ثم تنشئ تقريرًا مفصلاً. استخدم التقرير المفصل لاستكشاف المشكلات المتعلقة بأداء قاعدة البيانات وإصلاحها ، وتحديد مناطق المشكلات ، وتقليل الاستعلامات غير المفهرسة.

بناء ملف تعريف

  1. قبل البدء التنميط قاعدة بيانات Firebase الحقيقي الخاص بك، تأكد من أنك تستخدم أحدث إصدار من Firebase CLI والتي كنت قد تهيئته لقاعدة البيانات والمشروع الذي تريد ملف. لاحظ أنه يجب أن تكون محررًا أو مالكًا لهذا المشروع لملفه الشخصي.

  2. بدء التنميط قاعدة البيانات الخاصة بك مع الأمر التالي:

    firebase database:profile
    يعرض التعريف رسالة حالة حيث يسجل عمليات من قاعدة البيانات الخاصة بك، ويبني الشخصية.

  3. اضغط Enter لإكمال البيانات الشخصية وعرض النتائج.

فسر نتائجك

أداة التعريف المجاميع البيانات التي تم جمعها حول عمليات قاعدة البيانات الخاصة بك ويعرض النتائج في ثلاث فئات رئيسية هي: السرعة ، عرض النطاق الترددي ، و الاستفسارات فقا للتضخم .

سرعة

يقيس تقرير السرعة وقت استجابة الخادم (بالمللي ثانية) لكل نوع من أنواع العمليات. ومع ذلك ، قد لا تعكس السرعة التي تم قياسها في تقرير السرعة تجربة المستخدمين النهائيين للسرعة. يمكن أن تضيف عوامل مختلفة ، بما في ذلك ظروف الشبكة ، زمن انتقال من جانب العميل.

يتضمن تقرير السرعة الخصائص التالية:

  • مسار: مسار في قاعدة البيانات التي وقعت فيها العمليات. إذا كان هناك أكثر من 25 طفل العقد، وأداة التعريف انهارت هذه إلى مسار الأم ويضيف $wildcard علامة. قد ترى الدليل الجذر قاعدة البيانات الخاصة بك في التقرير، الذي يمثله خط مائل / .
  • الاحصاء: عدد العمليات التي وقعت في مسار معين.
  • متوسط سرعة التنفيذ: متوسط الوقت الذي يستغرقه الخادم لتنفيذ منطق الأعمال اللازمة للتعامل مع نوع العملية بشكل خاص في هذا الطريق. يبدأ الفاصل الزمني المقاس هنا بعد ذلك الذي تم قياسه بواسطة "متوسط ​​وقت الانتظار" الموضح أدناه.
  • متوسط الانتظار الوقت: متوسط طلبات الوقت تقضيه في قائمة الانتظار قبل الحصول على تنفيذها. هذا التأخير شائع لجميع الطلبات التي يبدأها العميل. إجمالي وقت استجابة الطلب من جانب الخادم هو تقريبًا إجمالي وقت الطلب المعلق وسرعة التنفيذ.
  • تم رفض الإذن: عدد العمليات في المسار المعطى التي تم حظرها بواسطة قواعد بيانات Firebase على قاعدة البيانات الخاصة بك.
تقرير السرعة حسب نوع العملية
قراءة سرعة التنفيذ وقت استجابة الخادم لطلبات العميل لقراءة البيانات من قاعدة البيانات. يتناسب وقت تنفيذ القراءة بشكل عام مع مقدار البيانات التي تتم قراءتها ، ولكن حتى بعض القراءات الصغيرة قد تتأخر أيضًا عن طريق الجلب المسبق لذاكرة التخزين المؤقت.
كتابة سرعة التنفيذ وقت استجابة الخادم لطلبات العميل لكتابة البيانات إلى قاعدة البيانات. اكتب مقاييس وقت التنفيذ مع مقدار البيانات التي تتم كتابتها.
ربط سرعة التنفيذ وقت استجابة الخادم للطلبات التي يتم إنشاؤها لعملاء قاعدة البيانات. يهيمن على وقت الاستجابة لطلبات الاتصال مسك الدفاتر في جانب الخادم المتعلق بإدارة الاتصال.
سرعة تنفيذ البث

مقدار الوقت الذي يستغرقه الخادم لتوزيع البيانات على العملاء الذين يستمعون إلى المسار المحدد لتحديثات الوقت الفعلي.

الخاصية Count في تقرير سرعة البث المجاميع عدد من الإذاعات التي وقعت، وليس عدد العملاء التي حصلت على المعلومات. على سبيل المثال ، إذا كان 10 عملاء يستمعون إلى مسار معين ، وبث الخادم تحديثًا لجميع العملاء العشرة ، فإن عدد البث يعكس فقط بثًا واحدًا ، على الرغم من تلقي 10 عملاء للبيانات.

لا يتم تضمين خاصية رفض الإذن في تقرير بث السرعة.

عرض النطاق

يوفر تقرير النطاق الترددي نظرة ثاقبة حول مقدار البيانات التي تستهلكها قاعدة البيانات الخاصة بك عبر العمليات الواردة والصادرة. يجب ألا تستخدم تقرير النطاق الترددي لتقدير الفواتير ، على الرغم من ذلك ، لأنه لا يتضمن النطاق الترددي المستخدم في عمليات أخرى ، مثل إنشاء ملفات تعريف لقاعدة البيانات الخاصة بك. يقدّر تقرير النطاق الترددي تقريبًا حجم حمولة البيانات المستهلكة من خلال عمليات القراءة والكتابة والبث من قاعدة البيانات الخاصة بك وإليها. إنها أداة تقيس الأداء ، وليست الأداة التي تتنبأ بالفواتير.

يتضمن تقرير النطاق الترددي الخصائص التالية:

  • مسار: مسار في قاعدة البيانات التي وقعت فيها العمليات. إذا كان هناك أكثر من 25 عقدة فرعية ، تقوم أداة منشئ ملفات التعريف بطيها في مسار أصل.

  • المجموع: مجموع بايت الصادرة أو الواردة المستخدمة في جميع العمليات في مسار معين.

  • الاحصاء: عدد العمليات التي وقعت في مسار معين.

  • متوسط: متوسط عدد البايتات التي تم تحميلها أو تحميلها عبر العمليات في مسار معين (بايت / الكتابة أو بايت / قراءة).

تقرير عرض النطاق الترددي
البايت التي تم تنزيلها البيانات المستهلكة من خلال عمليات القراءة والبث المرسلة عبر SDKs للعميل وواجهة برمجة تطبيقات REST.
البايت التي تم تحميلها البيانات المستهلكة من خلال طلبات الكتابة الواردة إلى خادم قاعدة البيانات. تظهر الحذفات ككتب مع 0 بايت تحت الوارد.

استعلامات غير مفهرسة

يمكن أن تكون الاستعلامات غير المفهرسة باهظة الثمن ، لأن العملاء يقومون بتنزيل جميع البيانات في موقع ثم إجراء استعلامات عليها. يستخدم هذا النطاق الترددي أكثر من اللازم. قم بحل أكبر عدد ممكن من الاستعلامات غير المفهرسة لتحسين أداء قاعدة البيانات الخاصة بك.

يعرض تقرير الاستعلامات غير المفهرسة الخصائص التالية:

  • مسار: مسار في قاعدة البيانات الخاصة بك حيث وقعت الاستعلامات غير معدلة.
  • الفهرس: القاعدة يجب أن تضيف إلى حل الاستعلامات غير معدلة. معرفة المزيد حول فهرسة في مؤشر البيانات الخاصة بك .
  • الاحصاء: عدد من الاستفسارات التي وقعت فقا للتضخم في مسار معين.

التنميط المتقدم

لمعرفة جميع العمليات هو التعامل مع قاعدة البيانات الخاصة بك، استخدم --raw العلم عند تعريف قاعدة البيانات الخاصة بك، على النحو التالي:

firebase database:profile --raw

يتضمن الإخراج الخام أيضا معلومات العميل لكل عملية، مثل userAgent سلاسل وعناوين IP. تعرف على المزيد حول عمليات مختلفة لمحة الخاصة بك في قاعدة بيانات Firebase الحقيقي في أنواع تشغيل قاعدة البيانات Firebase الحقيقي .

أداة ملف التعريف: ليست أداة فوترة

لا تستخدم أداة ملف التعريف لتقدير تكلفة النطاق الترددي. تهدف أداة ملف التعريف إلى إعطائك صورة شاملة لأداء قاعدة البيانات الخاصة بك ، لمساعدتك في مراقبة العمليات واستكشاف المشكلات وإصلاحها ، وليس لتقدير الفواتير. لا يأخذ في الحسبان حركة مرور الشبكة ، فهو يسجل فقط تقديرًا لبيانات التطبيق المرسلة في الردود.

فيما يلي بعض الأمثلة الشائعة لحركة مرور الشبكة التي يتم تحرير فواتير بها بواسطة Firebase والتي لم يتم تغطيتها في ملف تعريف قاعدة البيانات الخاص بك:

  • بروتوكول النفقات العامة: بعض الحركة إضافية بين الخادم والعملاء ضروري لإنشاء والحفاظ على الدورة. اعتمادًا على البروتوكول الأساسي ، قد تتضمن حركة المرور هذه: حمل بروتوكول الوقت الفعلي لقاعدة بيانات Firebase Realtime ، و WebSocket overhead ، ورأس HTTP. في كل مرة يتم فيها إنشاء اتصال ، تساهم هذه النفقات العامة ، جنبًا إلى جنب مع أي عبء إضافي لتشفير طبقة المقابس الآمنة ، في تكاليف الاتصال. على الرغم من أن هذا لا يمثل عادةً مقدارًا كبيرًا من النطاق الترددي ، إلا أنه يمكن أن يكون كبيرًا إذا كانت حمولاتك صغيرة أو تقوم بإجراء اتصالات متكررة وقصيرة.
  • تشفير SSL النفقات العامة: هناك التكاليف المرتبطة التشفير SSL الضروري النفقات العامة للاتصالات الآمنة. في المتوسط ​​، تبلغ هذه التكلفة حوالي 3.5 كيلو بايت للمصافحة الأولية ، وحوالي 40 مليار لرؤوس سجلات TLS في كل رسالة صادرة. بالنسبة لمعظم التطبيقات ، هذه نسبة صغيرة من فاتورتك. ومع ذلك ، قد تصبح هذه نسبة كبيرة إذا كانت حالتك المحددة تتطلب الكثير من مصافحة SSL. على سبيل المثال ، قد تتطلب الأجهزة التي لا تدعم تذاكر جلسة TLS عددًا كبيرًا من اتصالات اتصال SSL.

إقرأ المزيد حول فهم وتقدير الفاتورة .