#sql #session
#sql #сеанс
Вопрос:
Мы очень новички в ASP.net … на самом деле работаем с внешним консультантом, к которому у меня в настоящее время нет доступа.
Я ищу:
-
Хорошая документация / рекомендации по управлению сеансами и сеансами. Сейчас я нахожу некоторую информацию: http://support.microsoft.com/kb/317604
-
Обзор приложения ниже для комментариев о том, как наилучшим образом справиться с этим сценарием.
У нас есть следующий сценарий:
- OEM-машина на этаже, предоставляющая обновления статуса каждые x.x секунд в таблицу Device_Status.
- Когда ASP.net клиент / пользователь хочет просмотреть статус конкретной машины, я хочу уведомить OEM-машину на этаже, чтобы увеличить частоту обновления почти до реального времени. Возможно, с флагом «realtimeupdate» в таблице Device_Status.
- Когда ASP.net клиент / пользователь переходит или выходит из системы, частота обновления должна вернуться к x.x секунд.
Поскольку мы очень новички в ASP.net , мы не имеем ни малейшего представления о сеансах и управлении сеансами, а также о том, возможно ли это.
Единственная проблема, которую я вижу до сих пор, заключается в том, что ASP.net клиентское соединение прерывается до установки флага «realtimeupdate» на 0. Если это произойдет, OEM-компьютер продолжит предоставлять обновления в режиме реального времени, когда они больше не нужны.
Комментарии:
1. Возможно ли захватить какой-либо идентификатор сеанса из клиентского соединения и запустить хранимую процедуру при разрыве соединения? Я искал и искал, и мне просто нужен толчок в правильном направлении.
2. Я нашел эту статью о состояниях SQL Server: support.microsoft.com/?id=820782 и этот , касающийся ASP.NET Состояния сеанса msdn.microsoft.com/en-us/library/87069683(VS.71).aspx
Ответ №1:
вы не можете рассчитывать на то, что браузер (или пользователь) скажет «привет, я закончил». Люди уходят от ПК, переходят на stackoverflow.com , нажмите X, чтобы закрыть браузер, и т.д. вам нужно будет закодировать свою веб-страницу, чтобы запрашивать частоту «live» при каждом обновлении страницы. и попросите какой-нибудь независимый серверный процесс отключить «живую» частоту, если вы не получаете обновления страницы с запросом «живой» частоты через некоторое заданное время. В дополнение к отключению вашей страницы, если пользователь попросит об этом.
Комментарии:
1. спасибо … вопрос в том, что «какой-то независимый серверный процесс» может это сделать? Я думаю, что с помощью приведенных выше ссылок я теперь могу найти то, что мне нужно сделать.
2. «некоторый независимый серверный процесс» — это некоторая программа, которую вы пишете, которая запускается на сервере каждые x минут и определяет, нужно ли отключать какие-либо «текущие» запросы частоты, потому что он не находит ни одного недавнего запроса для поддержания «живой» частоты».