ازدحام قفل ClickHouse: اختناق الأداء لمدة عام
2025-03-21
واجهت شركة Tinybird مشكلة استمرت لمدة عام تتمثل في انخفاض استخدام وحدة المعالجة المركزية بشكل كبير في أحد مجموعات ClickHouse الخاصة بها خلال أوقات الذروة. تم تحديد السبب الرئيسي في ازدحام قفل Context. من خلال إضافة مقياس `ContextLockWaitMicroseconds` لمراقبة أوقات انتظار القفل وإعادة تصميم آلية قفل Context - استبدال قفل mutex واحد عالمي بقفل mutex للقراءة والكتابة - تحسنت الأداء بشكل كبير. توضح المقالة بالتفصيل استخدام تحليل أمان الخيوط في Clang لتصحيح الأخطاء وحل مشكلات التزامن، بالإضافة إلى نتائج اختبار مقاييس الأداء التي تُظهر زيادة قدرها 3 أضعاف في QPS ومكاسب كبيرة في استخدام وحدة المعالجة المركزية.
اقرأ المزيد
التطوير