Яка різниця між Автоматичним та Автоматичним (затримка старту) для налаштування властивості для служби Windows? тобто що я отримую чи втрачаю, встановлюючи свою послугу як ту чи іншу?
Запуск служби на Windows Server 2008 x64
Яка різниця між Автоматичним та Автоматичним (затримка старту) для налаштування властивості для служби Windows? тобто що я отримую чи втрачаю, встановлюючи свою послугу як ту чи іншу?
Запуск служби на Windows Server 2008 x64
Відповіді:
Послуга, позначена як Автоматичний (затримка запуску) , запуститься незабаром після запуску всіх інших служб, позначених як Автоматичний . На мій досвід, це означає, що вони починаються через 1-2 хвилини після завантаження комп'ютера.
Цей параметр є найбільш корисним для зменшення "шаленого пориву" ресурсів, коли машина завантажується.
Зауважте, що коли у вас буде запущено 20 сервісів, усі вони запускаються одночасно, кожен запускатиметься повільніше, оскільки конкурує з іншими за фрагменти дорогоцінних ресурсів машини (CPU / RAM / Disk / Network). Тобто, кожна послуга займає більше часу, щоб стати доступною!
Якщо у вас є кілька критично важливих служб, ви можете встановити ці декілька на Автоматичне та встановити стільки ж інших, скільки ви можете на Автоматичний (затримка запуску) . Це забезпечить, що критичні служби отримують найбільше ресурсів раніше та стають доступними раніше, тоді як некритичні служби запускаються трохи пізніше (що за визначенням нормально).
HKLM\SYSTEM\CurrentControlSet\Control
. Коли ця відпрацьована нитка запускається, сервіси затримки запуску обробляються, і коли вони завершені, SCM сигналізує про подію \ BaseNamedObjects \ SC_AutoStartComplete ...
DWORD
для HKLM\SYSTEM\CurrentControlSet\services\<service name>\AutoStartDelay
.
Наскільки я розумію, це просто затримка перед запуском послуги.
Пізніші версії Windows ввели це, щоб переконатися, що вони не перетинали ноги один одного під час завантажувального процесу (наявність газільйонних процесів, що запускаються одночасно, не сприяє продуктивності).
В документації на цю функцію вказується, що позначені таким чином послуги будуть запускатися "незабаром після завантаження", сподіваємось, що коли послуги, необхідні для завантаження, трохи відстояли.
Ось приклад. У мене є служба SonarQube, яка залежить від моєї служби баз даних MySQL. Отже, я встановив сервіс MySQL автоматичним, щоб запустити та запустити базу даних, коли машина завантажується. У мене сервіс SonarQube встановлений для автоматичного (затримки) запуску, щоб переконатися, що він запускається ПІСЛЯ запуску служби бази даних, від якої залежить.
Якщо у вас є така залежність, це може бути корисно використовувати відкладений старт, щоб переконатися, що залежні служби запускаються в правильному порядку.
Це також використовується, коли ви хочете затримати початок послуги, щоб дозволити повністю запустити інші послуги, наприклад, клієнт SCCM, який робить затримку запуску, щоб сервіс WMI запускався повністю, оскільки це залежить від того, як він повністю працює. і біг.
В основному це використовується для послуг, які починаються з облікових записів AD. Якщо сервіс намагається запуститись до того, як сервер підключиться до мережі, щоб зв’язатися з постійним струмом, він вийде з ладу, і іноді система застрягне і стає недоступною.
Затримка гарантує, що послуга почнеться після того, як мережеве з'єднання встановлено, щоб використовувати для цього обліковий запис AD.