Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon كيف يمكنني إضافة المزيد من العبيد إلى إعداد النسخ المتماثل MySQL دون التسبب في مشكلات الأداء


كيف يمكنني إضافة المزيد من العبيد إلى إعداد النسخ المتماثل MySQL دون التسبب في مشكلات الأداء


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

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

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

لتحسين المزيد ، قم بضبط خيوط النسخ المتماثل على العبيد. من MySQL 5.6 فصاعدًا ، يتم دعم النسخ المتماثل متعدد الخيوط ، مما يتيح عدة مؤشرات ترابط SQL لتطبيق أحداث سجل الترحيل بالتوازي. يمكن أن يقلل ذلك من تأخر النسخ المتماثل ، خاصةً عندما يتضمن عبء العمل العديد من قواعد البيانات أو الجداول المختلفة التي يمكن معالجتها بشكل مستقل بواسطة مؤشرات ترابط متعددة.

يعد تكوين Disk I/O أمرًا بالغ الأهمية أيضًا: سجلات ترحيل مكان وملفات قاعدة البيانات على محركات فعلية منفصلة لتقليل خلاف الإدخال/الإخراج. هذا يمكن أن يساعد العبيد على مواكبة دفق النسخ المتماثل بشكل أكثر كفاءة.

في البيئات الكبيرة ، فكر في تقسيم المسؤولية عن طريق تفويض قواعد البيانات أو الجداول المختلفة إلى النسخ المتماثلة المختلفة لموازنة الحمل ومنع الخلاف على أي نسخة متماثلة واحدة.

عند إضافة عبد جديد ، من المهم توفيره بشكل صحيح:

- تعيين فريدة من نوعها `server_id` لتجنب النزاعات.
- تهيئة العبد باستخدام لقطة أو نسخة احتياطية لبيانات الابتدائية لضمان بدء التكرار من نقطة ثابتة.
- تكوين العبد مع تفاصيل اتصال المصدر وإعدادات النسخ المتماثل.
-استخدم خيارات مثل `-skip-slave-start` أثناء التهيئة لمنع التكرار من البدء قبل الأوان.
- ابدأ النسخ المتماثل بمجرد اكتمال الإعداد ومراقبة أي تأخر أو أخطاء.

يمكن إجراء النسخ الاحتياطي واستعادة البيانات على العبيد الجدد باستخدام أدوات مثل "MySqLdump` أو Percona Xtrabackup أو MySQL Clone المكون الإضافي ، اعتمادًا على الحجم والتسامح مع التوقف عن العمل. يمكن أن تنشئ الأداة المساعدة XtraBackup نسخ احتياطية ساخنة دون قفل قاعدة بيانات المصدر ، وتقليل وقت التوقف.

للمزامنة وموازنة التحميل الأولية ، يمكن أن تساعد أدوات مثل Table-Table-Sync في ضمان اتساق البيانات بين Master و Slave بعد الاستعادة.

لتلخيص ، تشمل الاستراتيجيات الرئيسية لإضافة المزيد من العبيد دون تدهور الأداء:

- استخدم طوبولوجيا النسخ المتماثل الهرمي مع النسخ المتماثلة المتوسطة.
- تمكين `log_slave_updates` على النسخ المتماثلة المتوسطة.
- اختر بين أوضاع النسخ المتماثل غير المتزامن وغير المتزامن بناءً على احتياجات الاتساق والكمون.
- توظيف النسخ المتماثل متعدد الخيوط على العبيد.
- تحسين I/O عن طريق فصل سجلات التتابع وملفات البيانات جسديًا.
- توزيع عبء عمل النسخ المتماثل عن طريق قاعدة البيانات أو فصل الجدول.
- توفير عبيد جديد بعناية مع معرفات الخادم الفريدة واللقطات المتسقة.
- استخدم أدوات النسخ الاحتياطي والمتزامنة المناسبة للإعداد الأولي.
- مراقبة تأخر النسخ المتماثل ومقاييس الأداء بشكل مستمر.

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

يمكن العثور على إجراءات عملية مفصلة لإعداد وإدارة ذلك في وثائق MySQL الرسمية ومن مقدمي خدمات MySQL ذوي الخبرة الذين يتخصصون في بنية التوفر والنسخ المتماثل.