ينبغي تقليل وقت بدء تشغيل Home Assistant عبر تحديد المرحلة التي تنتظر فعليًا، وليس عبر تعطيل تكاملات عشوائية أو ترقية الخادم أولًا. قد يكشف إعادة التشغيل التبعيات الجاهزة أصلًا أثناء إعادة تشغيل Home Assistant العادية، مثل DNS، والتخزين الشبكي، وقاعدة البيانات الخارجية، وMQTT، ووحدات الراديو USB، أو الحاويات الأخرى التي لا تزال قيد التشغيل.
قِس التكامل الأبطأ، وقارن بين إعادة تشغيل Home Assistant فقط وإعادة تشغيل المضيف بالكامل، ثم أصلح التبعية التي تفسر الفرق. إن إعادة التشغيل الثانية السريعة بعد استيقاظ الجهاز بالكامل تعد دليلًا قويًا على أن ترتيب بدء التشغيل أو التبعية الخارجية أهم من قوة وحدة المعالجة المركزية الخام.
استخدم أوقات بدء تشغيل التكاملات قبل تغيير الإعدادات
يعرض Home Assistant توقيت بدء تشغيل التكاملات، حتى تتمكن من معرفة التكاملات التي تؤخر تسلسل الإقلاع. ابدأ من هنا بدلًا من قراءة إجمالي وقت بدء التشغيل كرقم واحد.
يوثق Home Assistant هذا التشخيص مباشرة الآن: تعرض الإعدادات ← النظام ← الإصلاحات ← وقت بدء تشغيل التكاملات التكاملات التي تؤخر بدء التشغيل وقد تواجه مشكلات في الاتصال. استخدم هذه اللوحة قبل اعتبار إجمالي وقت الإقلاع مشكلة في العتاد.
سجّل البيانات نفسها بعد إعادة تشغيل Home Assistant بشكل طبيعي وبعد إعادة تشغيل الخادم بالكامل. عادةً ما يكون التكامل الذي يتغير وقت إعداده أكثر فائدة للتشخيص من التكامل الذي يكون بطيئًا قليلًا باستمرار.
افصل بين بدء تشغيل النواة والتبعيات التي لم تصبح جاهزة بعد
تبدأ عملية إعادة التشغيل الكاملة الشبكة، والتخزين، وDNS، وقواعد البيانات، والوسطاء، ووحدات الراديو، والحاويات، وHome Assistant ضمن نوافذ زمنية متداخلة. إذا بدأ Home Assistant قبل أن تصبح إحدى الخدمات المطلوبة قابلة للوصول، فقد يقضي وقتًا في الانتظار أو إعادة المحاولة.
غالبًا ما يعني بطء بدء التشغيل أن أحد التكاملات ينتظر جهازًا أو خدمة لم تصبح جاهزة بعد. توضح إرشادات التكامل الحالية في Home Assistant أن التبعيات غير المتاحة مؤقتًا ينبغي أن تدخل في مسار إعادة المحاولة بدلًا من تعطيل الاسترداد الطبيعي إلى أجل غير محدد.
لا تضف فترات تأخير عشوائية إلى الحاوية بأكملها ما لم تثبت أي تبعية تحتاج إلى وقت. فضّل استخدام فحص جاهزية صريح، أو DNS مستقر، أو ترتيب تحميل صحيح لنقاط التحميل، أو تبعية خدمة تعبّر عن الجاهزية الفعلية.
تحقق من Recorder عندما يتوقف بدء التشغيل عند قاعدة البيانات
قد يؤخر Recorder بدء التشغيل عندما تحتاج قاعدة البيانات إلى ترحيل للمخطط، أو تكون بطيئة في الفتح، أو تكون خارجية وغير قابلة للوصول بعد. أثناء عمليات الترحيل، قد ينتظر Home Assistant عمدًا بدلًا من التخلي عن قاعدة البيانات في حالة ترحيل جزئية.
إذا أبلغت الواجهة عن أن Recorder هو المكوّن البطيء، فتحقق من سجلات قاعدة البيانات، وزمن استجابة التخزين، والمساحة الحرة، وإمكانية الوصول إلى قاعدة البيانات الخارجية. لا تحذف قاعدة البيانات لمجرد تسريع بدء التشغيل، إلا إذا كان الاحتفاظ بالسجل غير مهم فعلًا.
حافظ على دقة التشخيص: فبطء فتح SQLite مشكلة في التخزين، بينما مهلة الاتصال بـ PostgreSQL أو MariaDB خارجية هي مشكلة في الشبكة أو جاهزية الخدمة.
عطّل التكاملات المخصصة التي تمنع بدء التشغيل أو حدّثها
قد تضيف التكاملات المخصصة تبعيات أو سلوكيات لبدء التشغيل لا يختبرها Home Assistant ضمن الإصدار الرسمي. إذا أصبح بدء التشغيل بطيئًا مباشرة بعد تحديث، فقارن التوقيت مع تعطيل التكاملات المخصصة أو تحديثها.
يوصي مسار استكشاف الأخطاء وإصلاحها الحالي في Home Assistant بـ إعادة التشغيل في الوضع الآمن لاستبعاد التكاملات المخصصة والبطاقات المخصصة والسمات المخصصة من الاختبار. إذا تحسن بدء التشغيل هناك، فالمسار البطيء يقع خارج نواة Home Assistant.
أزل مشتبهًا به واحدًا في كل مرة وكرر اختبار إعادة التشغيل نفسه. لا يكفي إقلاع سريع لمرة واحدة؛ اشترط تكرار التحسن.
أزل أعمال بدء التشغيل التي لا تحتاج إلى التنفيذ المتزامن
لا تحتاج كل التقارير أو عمليات الفحص أو مهام الكاميرا أو تحديثات API أو الأتمتة المخصصة إلى العمل فورًا عند بدء تشغيل Home Assistant. وزّع الأعمال غير الحرجة بعيدًا عن الدقائق الأولى بعد إعادة التشغيل، عندما يكون النظام يستعيد التكاملات والحالة أيضًا.
يفيد هنا شرح ZimaSpace حول العمل القائم على الأحداث مقارنة بالدفعات المجدولة في الخلفية: الهدف هو حماية مسار بدء التشغيل الحساس لزمن الاستجابة، لا إلغاء جميع الأعمال اللاحقة.
يتحسن بدء التشغيل عندما تصبح التكاملات المطلوبة نفسها جاهزة في وقت أقصر ويصل الجهاز إلى حالة تحكم مستقرة بسرعة أكبر، وليس لمجرد ظهور صفحة تسجيل الدخول قبل ذلك ببضع ثوانٍ.
الأسئلة الشائعة
لماذا يكون Home Assistant بطيئًا فقط بعد إعادة تشغيل الخادم بالكامل؟
يشير ذلك عادةً إلى تبعية لم تصبح جاهزة بعد، مثل DNS أو التخزين أو MQTT أو قاعدة البيانات أو خدمة الراديو. قارن أوقات بدء تشغيل التكاملات بعد إعادة تشغيل المضيف وبعد إعادة تشغيل Home Assistant فقط.
الدعم والنصائح
المزيد للقراءة

علامات تدل على أن قاعدة بيانات Home Assistant تحتاج إلى صيانة أو استبدال
عادةً ما تحتاج قاعدة بيانات Home Assistant الكبيرة إلى ضبط مدة الاحتفاظ بالبيانات أو تنظيفها؛ أما تكرار تلفها أو ظهور أخطاء سلامة البيانات فيُعد...

كم عدد المستخدمين المتزامنين الذين يستطيع Home Assistant التعامل معهم قبل أن يتباطأ؟
لا يوجد لدى Home Assistant حدّ ثابت مفيد لعدد المستخدمين: اختبر العملاء النشطين باستخدام لوحات معلومات حقيقية وتحديثات الكيانات، ثم توقّف قبل ظهور زمن...

هل يستطيع Home Assistant استخدام قاعدة بيانات خارجية دون التسبب في مشكلات أثناء الترقية؟
يمكن لقاعدة بيانات Recorder خارجية أن تصمد أمام عمليات الترقية، لكنها تضيف مسؤولياتها الخاصة المتعلقة بالتوافر، وترحيل المخطط، والنسخ الاحتياطي، والاستعادة، وإدارة الإصدارات.

