Как я могу проверить, запускает ли кто-нибудь мою программу? - PullRequest
1 голос
/ 06 марта 2012

У меня есть программа, которую используют 10-20 человек в течение дня. Поскольку ситуация быстро меняется, мне иногда приходится отключать базу данных или перезагружать сервер по другим причинам. Мне бы хотелось иметь лучший способ убедиться, что в данный момент в программе никого нет, чем идти к каждому человеку и спрашивать его.

Я не хочу заново изобретать колесо, если что-то подобное уже существует.

Мысли были у меня:

  • Создание записи «истории» базы данных каждый раз, когда пользователи открывают или закрывают программу, чтобы увидеть, кто в данный момент использует систему.
  • Используйте WCF, чтобы клиенты "сообщали" серверу, что они подключены каждые X секунд.

Есть ли лучшие или более простые решения этой проблемы?

Ответы [ 2 ]

0 голосов
/ 06 марта 2012

Одним из решений является передача некоторых данных по сети с помощью UdpClient и поиск ответов, чтобы узнать, есть ли какие-либо экземпляры приложения в сети.

Я не знаю, является ли это решение жизнеспособным в вашемслучай, но я подумал, что это решение пригодится, по крайней мере, для некоторых людей.

0 голосов
/ 06 марта 2012

Одним из решений будет создание таблицы базы данных, в которой каждый раз, когда кто-то входит в систему, для него создается запись. Каждые 15 минут он обновляется с последним временем обновления. Когда они закрываются, он удаляет запись. Если какая-либо запись длится более 15 минут, это сбой приложения.

Это грубо, но это работает, вам нужно выполнить простой запрос к БД.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...