Службы компонентов, запущенные процессы, запланированная утилизация
У меня есть Windows Server 2003 SBS SP2.
Это хостинг нашего бизнес-приложения.
Примерно раз в неделю клиенты приложения на рабочих станциях по всему офису получают сообщение об ошибке "Не удается связаться с бизнес-сервером".
На данный момент я удаленный к SBS
запустите "dcomcnfg" Root консоли> Службы компонентов> Компьютеры> Мой компьютер> Запущенные процессы.
Там я щелкаю правой кнопкой мыши по значку приложения и запускаю утилизацию. Как только этот процесс завершится, мои клиенты снова смогут общаться с сервером.
У меня вопрос, может ли это быть автоматизировано для повторного использования один раз в день? Нужно ли делать это через командную строку и написать пакетный скрипт для этого? Если это так, каковы операторы командной строки?
Если это можно сделать в графическом интерфейсе, можете ли вы указать мне правильное направление?
1 ответ
Вы можете использовать PowerShell для взаимодействия с каталогом Служб компонентов и установить значение "RecycleLifetimeLimit" равное количеству минут, которое приложение должно запустить перед утилизацией:
$TargetAppName = "todbannersBiznezApp"
$ComCatalog = New-Object -ComObject COMAdmin.COMAdminCatalog
$ComCatalog.Connect("localhost")
$ComApps = $ComCatalog.GetCollection("Applications")
$ComApps.Populate()
foreach($App in $ComApps)
{
if($App.Name -eq $TargetAppName)
{
# 30240 (21 days) is the maximum lifetime value
# Let's set it to 1440 (24 hours)
$App.Value("RecycleLifetimeLimit") = 1440
$ComApps.SaveChanges()
break
}
}
Вы также можете сделать это из консоли управления Component Services, если хотите:
- Откройте консоль управления служб компонентов (запустите ->
comexp.msc
) - Перейдите в Службы компонентов -> Компьютеры -> Мой компьютер /Localhost
- Развернуть Приложения COM+
- Щелкните правой кнопкой мыши свое бизнес-приложение и выберите Свойства
- Перейдите на вкладку "Объединение и переработка"
- Настройте нужные параметры корзины для приложения