
Cloudflare تستهدف بناءات DNS لتقليل ذاكرة Zone Builder والتأخيرات
قللت أداة Cloudflare لبناء DNS الموجهة والمجدول الموحد ذروة ذاكرة Zone Builder بنسبة 85% وخفضت وسيط تأخر إكمال البناء إلى النصف، بينما تتجنب 92.95% من البناءات إعادة بناء المنطقة بأكملها.
غيّرت Cloudflare أداة Zone Builder الخاصة بـ DNS لتختار أصغر بناء آمن لكل تغيير بدلاً من إعادة بناء المناطق بأكملها، مما خفض ذروة الذاكرة بنسبة 85% وقلص وسيط تأخر إكمال البناء إلى النصف. كما تتيح أداة التخطيط والمجدول الموحد تجنب 92.95% من البناءات إعادة بناء المنطقة بأكملها.
لماذا أصبحت البناءات الكاملة مكلفة
تُحوّل أداة Zone Builder تغييرات قاعدة البيانات إلى بيانات لخوادم DNS الموثوقة من Cloudflare وتكتب التغييرات إلى Quicksilver. يقرأ البناء الكامل ويُشفّر ويُقارن كل سجل ويحتفظ بالمنطقة بأكملها في الذاكرة، وهو ما يكون مكلفاً للمناطق التي تحتوي على عشرات الملايين من السجلات. اليوم تتلقى أداة البناء حوالي 700 تغيير سجل DNS في الثانية، ارتفاعاً من حوالي 250 في 2022، إضافة إلى حوالي 100 حدث آخر.
البناءات الموجهة وخمسة أنواع من البناء
تتضمن الأحداث الآن حقول المنطقة وإعداداتها عند توفرها. يربط مخطط التخطيط كل تغيير بنوع بناء من خمسة: الموارد فقط؛ الموارد والبيانات الوصفية؛ apex والبيانات الوصفية؛ purge؛ أو المنطقة بأكملها. ويستخدم البناءات الكاملة فقط عندما لا يمكن إثبات أن العمل الأصغر آمن. على مدار 24 ساعة، كانت 86.81% موارد فقط، و2.54% موارد والبيانات الوصفية، و2.30% apex والبيانات الوصفية، و1.30% purge، و7.04% المنطقة بأكملها. كان نوعا البيانات الوصفية سابقاً بناءات كاملة، لذلك انخفضت البناءات الكاملة بنحو 40%.
الأسماء المشتركة والجدولة
يخزن Quicksilver مفتاح بيانات وصفية واحداً يشاركه كل منطقة من Cloudflare التي لها نفس اسم النطاق. تُعيد البناءات الموجهة بناء هذا المفتاح من مجموعة المرشحين الحالية عند الحاجة وتكتب سجلات المنطقة قبل البيانات الوصفية التي تشير إليها. يدمج مجدول موحد العمل المُدرج في قائمة الانتظار للمنطقة نفسها، لذا يمكن أن يصبح تغيير سجل A وتغيير wildcard بناءً واحداً. وهو يبقي رسائل Kafka مرفقة حتى تُكتب النتائج بأمان، ويمنع منطقة مشغولة من أخذ كل عامل من خلال فاصل إعادة بناء لكل منطقة.
التحقق والذاكرة ونتائج التأخر
تُقارن اختبارات التكافؤ البناءات الكاملة والموجهة بايتاً ببايت. يستهلك Zone Builder مرآة أحداث Kafka الإنتاجية ويقرأ حالة قاعدة البيانات الإنتاجية بينما يكتب إلى بيئة Quicksilver منفصلة؛ وتتحقق أداة المقارنة من عينة 20%. بعد الإطلاق، انخفض متوسط ذاكرة مجموعة العمل من 49 GiB إلى 7 GiB، والذروات من 79 GiB إلى 12 GiB. في مقارنة جنب إلى جنب، انخفض أكبر ارتفاع في تأخر p99 من 14.6 دقيقة إلى 1.21 دقيقة. بعد انتظار أقصر للمُجمِّع وفاصل إعادة بناء أقصر، انخفض وسيط تأخر إكمال البناء من حوالي 7.7 ثانية إلى حوالي 3.3 ثانية.
المصادر: Cloudflare
SiTech — تطوير ويب مدعوم بالذكاء الاصطناعي
نبني مواقع سريعة وعصرية وندمج الذكاء الاصطناعي في سير عمل الشركات. لديك مشروع أو سؤال؟ يسعدنا مساعدتك.