كيفية معرفة ما إذا كان Immich مقيّدًا بوحدة المعالجة المركزية أو ذاكرة الوصول العشوائي أو التخزين أو الشبكة

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

حدّد ما يقيّد Immich من خلال إعادة تنفيذ حمل عمل ثابت واحد للرفع أو التصفح أو البحث أو المهام الخلفية، وربط معدل إكماله بتشبّع وحدة المعالجة المركزية، وضغط الذاكرة، وزمن استجابة التخزين، وإنتاجية الشبكة خلال الفترة الزمنية نفسها.

النسبة المرتفعة وحدها لا تعني وجود عنق زجاجة: فقد يكون امتلاء وحدة المعالجة المركزية طبيعيًا أثناء تعلّم الآلة، وقد تكون نسبة استخدام ذاكرة الوصول العشوائي المرتفعة ناتجة عن ذاكرة التخزين المؤقت لنظام الملفات، وقد يكون الرفع البطيء بسبب الهاتف أو شبكة Wi‑Fi. قِس من العميل مرورًا بالحاوية وصولًا إلى المضيف، وسجّل تقدّم قائمة الانتظار، ثم غيّر قيدًا مشتبهًا فيه واحدًا وأعد الاختبار. المورد الذي يؤدي تخفيفه إلى تحسين حمل العمل نفسه هو القيد المسيطر.

أنشئ اختبارًا وجدولًا زمنيًا قابلين للتكرار

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

يصف تحقيق أجراه أحد المستخدمين عملية نشر لـ Immich بطيئة على نحو غير معتاد، مع البحث عن أدلة من وحدة المعالجة المركزية والذاكرة والقرص والشبكة. ويُعد الإطار التشخيصي متعدد الموارد مفيدًا، لكن يجب أن يحدّد اختبارك الثابت السبب على خادمك.

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

حدّد مؤشرات وحدة المعالجة المركزية والذاكرة

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

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

استهلكت حالة مُبلّغ عنها للصور المصغّرة في Immich v2.5.5 قدرًا هائلًا من الذاكرة في إحدى عمليات النشر. ويدعم تقرير الذاكرة المحدد بالإصدار التحقق من المهمة والإصدار المتسببين في الفشل؛ لكنه لا يثبت متطلبًا طبيعيًا لذاكرة الوصول العشوائي.

افصل بين زمن استجابة التخزين وإنتاجية الشبكة

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

بالنسبة إلى الشبكة، قِس عند العميل والخادم معًا، ثم قارن بين المسارات المحلية والبعيدة. يشير تشبّع الوصلة، أو إعادة الإرسال، أو محاولات إعادة الاتصال عبر Wi‑Fi، أو حدّ شبكة VPN المتزامن مع النقل إلى وجود قيد شبكي. وإذا انتهت حركة الرفع بينما ظلت المعالجة بطيئة، فاتبع قائمة الانتظار على جانب الخادم بدلًا من ذلك.

يقدّم استعراض ZimaSpace عن الخدمات على العتاد الأقدم سياقًا لتخطيط النظام؛ لكن يجب أن يعتمد هذا التشخيص على زمن الاستجابة ومعدل العمل المرصودين، لا على تصنيفات العمر.

خفّف قيدًا واحدًا وتحقق من حمل العمل نفسه

غيّر متغيرًا آمنًا واحدًا: خفّض تزامن مهمة واحدة، أو أجرِ اختبارًا مؤقتًا بحدّ للذاكرة، أو انقل نسخة من البيانات النشطة إلى تخزين أسرع، أو اختبر عبر شبكة محلية سلكية. أبقِ مجموعة البيانات والإصدارات وحالة ذاكرة التخزين المؤقت متقاربة. ينجح الاختبار السببي عندما يتحسن كل من الإكمال والمقياس المتوقع.

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

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

الدعم والنصائح

المزيد للقراءة

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.