40 دقيقة
الموثوقية والانقطاع وجودة البيانات
صمّم النظام ليتحمل انقطاع الشبكة وإعادة الاتصال وتكرار الرسائل وتأخرها، باستخدام Timestamp وSequence ID وBuffer محلي وسياسة Retry واضحة.
STRUCTURED LESSON
محتوى الدرس
اقرأ الوحدات بالترتيب، ثم اختبر فهمك قبل إكمال الدرس.
01مقدمة
افترض أن الشبكة ستنقطع
صمّم الجهاز ليواصل الوظائف المحلية الضرورية عند غياب الشبكة، بدل تعليق التحكم الأساسي على اتصال سحابي دائم.
02الفكرة
Buffer محلي محدود
إذا كانت البيانات مهمة، خزّن عددًا محدودًا من القياسات عند الانقطاع وأرسلها لاحقًا. ضع حدًا للحجم وسياسة لحذف الأقدم أو الأقل أهمية.
03الفكرة
Timestamp وSequence ID
Timestamp يحدد زمن القياس لا زمن وصوله للخادم، وSequence ID يساعد على اكتشاف الفقد والتكرار وإعادة الترتيب.
04تنبيه
Retry يحتاج Backoff وحدودًا
إعادة المحاولة المستمرة بسرعة قد تزيد الحمل أثناء العطل. استخدم Exponential Backoff أو تأخيرًا متزايدًا وحدًا للمحاولات مع Jitter عند الأنظمة الكبيرة.
KNOWLEDGE CHECK
سؤال واحدتحقق سريع من فهمك
ما فائدة Sequence ID في Telemetry؟