У меня есть веб-приложение на работе, похожее на систему работы с билетами. Некоторые пользователи вводят новые проблемы. Другие работники выбирают и решают проблемы. Все данные хранятся на сервере MS SQL 2005.
Пользователи, работающие над решением проблем, переходят на страницу, где они могут просматривать открытые проблемы. Потому что до 20 человек могут смотреть на эту страницу одновременно, одной из потенциальных проблем, с которыми мне пришлось столкнуться, было то, что происходит, если кто-то выбрал проблему, которую кто-то выбрал сразу после загрузки своей страницы.
Чтобы решить эту проблему, я сделал две вещи. Во-первых, gridview, отображающий проблемы для выбора, использует таймер AJAX для обновления каждую секунду. Как только проблема выбрана, она исчезает через секунду. В случае, если они выбирают один за этот второй, они получают сообщение с просьбой выбрать другое.
Проблема в том, что часть AJAX этого отправляет слишком много обновлений (это то, что я предполагаю), и это влияет на производительность страницы и базы данных. Кроме того, обновления не выполняются каждую секунду. Я считаю таймер ненадежным при работе над запуском хранимых процедур.
Должен быть лучший способ, но я не могу найти его. Есть ли у кого-нибудь опыт в подобной ситуации или есть предложения, чтобы несколько пользователей могли выбирать одну и ту же запись для поддержки? Я действительно не хочу полностью отключать часть AJAX, потому что я чувствую, что только сообщение сделает приложение неудобным для использования.
Спасибо,