
Cloudflare מקצרת את זמני בניית מחדש של אזורי DNS בחצי ומפחיתה שימוש ב-RAM ב-85%
מהנדסי Cloudflare ייעלו בנייה מחדש של אזורי DNS, קיצרו את זמן הבנייה החציוני מ-7.7 ל-3.3 שניות והפחיתו את השימוש ב-RAM בשרתי Zone Builder ב-85 אחוז, מטווח של 50 עד 79 GB לכמעט 7 GB.
Cloudflare אומרת שהמהנדסים שלה ייעלו את שירותי הבנייה מחדש של אזורי DNS, קיצרו את זמני הבנייה מחדש בחצי והפחיתו את השימוש בזיכרון ב-85% בכל הרשת שלה. העבודה מגיעה בעקבות חיסכונות זיכרון קודמים ומכוונת לצי DNS שמטפל ב-800 שינויי אזור בשנייה.
רקע והיקף
צי ה-DNS של Cloudflare מטפל ב-800 שינויי אזור בשנייה, לעומת 250 לפני ארבע שנים. אזור DNS מכיל את הרשומות, ההגדרות והמטא-נתונים של דומיין: כתובות IP, שמות מארח, שורות טקסט, תת-דומיינים, הפניות ומידע על ספאם או תעודות. החברה אומרת שיש לשמור על עקביות בכל אלפי שרתי ה-DNS, ולחלק מהדומיינים יש יותר מ-20 מיליון רשומות. קודם לכן מצאו המהנדסים חסכון של 100 TB בזיכרון במטמון ה-DNS, ועוד 100 TB משיפור הניתוב של שרתי המשימות. ב-2022 החברה כבר ייעלה את עדכון הרשומות כך שיעדכן רק את הנתונים הדרושים.
בנייה מחדש חלקית עבור הגדרות
בעבר דרשו עדכוני הגדרות בנייה מלאה. המהנדסים הוסיפו סיבה ומידע נוסף לאירועי שינוי של אזור, וכך אפשר לסווג את האירועים. בעקבות זאת, שינויי הגדרות מסוימים יכולים להשתמש בבניות קטנות וקצרות יותר. שינויי apex ומטא-נתונים, כמו Universal SSL, מהווים סוג אחד. שינוי של שרת השמות או של תווי כל בדומיין מפעיל הליך קטן יותר אחר. בנייה מלאה נשארת רק במקרים שבהם אין מנגנון לבנייה חלקית. דומיינים עם מספר רב של רשומות מתעדכנים כעת בחלקים. החברה מדווחת על ירידה של 85% בשימוש ב-RAM בשרתי Zone Builder, מטווח של 50 עד 79 GB לכמעט 7 GB, בעיקר בגלל השינויים האלה.
המתזמן והמקביליות
האופטימיזציה השנייה איחדה שני מתזמנים נפרדים, לתכנון ולביצוע, לאחד, ושיפרה את אופן הפעולה שלו. המתזמן החדש מזהה כמה שינויים שחלים על אותו אזור ומאחד אותם. Cloudflare משתמשת ב-Apache Kafka להעברת הודעות אירועים. בעבר, כשהודעה הפעילה בנייה איטית, המתין המתזמן לסיום המשימה ולא עיבד בקשות שהגיעו בינתיים, משום ש-Kafka מקדם הודעות לפי הסדר. כעת הוא מאשר ומריץ משימות קטנות יותר שנכנסות באותו זמן. הבקשות מסופקות זמן קצר לאחר שהוגשו, בקצב עקבי, ולא בהתפרצויות אחרי תור ארוך. הצוות גם הדק את מרווחי עיבוד התור. זמן הבנייה החציוני ירד מ-7.7 שניות ל-3.3 שניות.
מקורות: Tom's Hardware
SiTech — פיתוח אתרים בכוח ה-AI
אנחנו בונים אתרים מהירים ומודרניים ומשלבים AI בתהליכי עבודה אמיתיים. יש לכם פרויקט או שאלה? נשמח לעזור.