Форум: "Начинающим";
Текущий архив: 2006.12.17;
Скачать: [xml.tar.bz2];
ВнизКак узнать что система не висит. Найти похожие ветки
← →
KyRo (2006-11-28 16:37) [0]Подскажите . У меня есть клиент на удаленном компьютере и мне надо знать что компьютер не висит и если он не висит то проверить что не висит определенный процес. Можно ли это сделать и если да то как ?
← →
DrPass © (2006-11-28 16:40) [1]Разница между "висит" и "выключен" чисто визуальная, для программы это одно и то же. А для клиент-серверных приложений сюда еще добавь "не в сети"
← →
KyRo (2006-11-28 16:59) [2]
> DrPass © (28.11.06 16:40) [1]
> Разница между "висит" и "выключен" чисто визуальная, для
> программы это одно и то же. А для клиент-серверных приложений
> сюда еще добавь "не в сети"
Мне надо что бы клиент собрал нужную информацию и переслал на сервер.
Если он не откликается на запрос тогда 100% что то не в порядке и я ставлю соответственный статус.
А вот если клиент откликается (то есть запущен,работает и есть сеть). Как узнать работает определенный процесс или висит?.
Виндовс ведь пишет статус в диспетчере (НЕ ОТвечает) !!
← →
Barloggg (2006-11-28 16:59) [3]ну можно забацать рапорт по таймеру "я жив".
что-то вроде сигнала power_good для серверного железа с возможностью горячего отсоединения.
а вообще просто посылай запрос на тему "алле, ты живой", если есть ответ через нужное время, значит да, живой.
← →
Barloggg (2006-11-28 17:00) [4]а винда постоянно посылает сообщения которые приходят и обрабатываются в событии onIdle у объекта application.
← →
KyRo (2006-11-28 17:34) [5]
> Barloggg (28.11.06 17:00) [4]
> а винда постоянно посылает сообщения которые приходят и
> обрабатываются в событии onIdle у объекта application.
А как мне это сделать для чужого процесса ? Через АПИ ?
Если да подскажите какой функцией мне это сделать ?
Или расскажите по подробней как это сделать.
← →
Leonid Troyanovsky © (2006-11-28 18:59) [6]
> KyRo (28.11.06 17:34) [5]
> Или расскажите по подробней как это сделать.
Видишь ли, KyRo..
Идеология клиент-серверных приложений обычно
строится на предположении о том, что ресурсы
сервера более ценны, нежели ресурсы клиента.
Т.е., например, серверу не к лицу посылать
запросы клиенту (в особенности - синхронные).
Значит, если клиент заинтересован в том, скажем, чтобы
его считали живым, то он и должен об этом озаботится.
Хотя бы, по тому же таймеру.
Ну, а сервер, собирая статистику о клиенте за опред.
интервал, решает, считать клиента живым, или
освободить мобилизованные для его обслуживания
ресурсы в пользу других клиентов.
(Понятно, что такой сбор сведений также не бесплатен,
поэтому, окончательный выбор зависит и от многих
других факторов: стоимости создания контекста для
клиента, интенсивности обслуживания, степени
постоянства (запросов) клиентов и т.п. и т.д.).
Ну, а осмысленные решения подобных проблем, включая
поиск оптимальных стратегий, могут быть, AFAIK, получены
с помощью весьма развитого математического аппарата
теории массового обслуживания.
--
Regards, LVT.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.12.17;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.045 c