Ограничение одновременной фиксации изменений в списке данных несколькими пользователями (asp.net) - PullRequest
0 голосов
/ 13 февраля 2012

Я создал веб-приложение, которое показывает список клиентов, использующих управление списком данных asp.net. Каждый клиент может быть обновлен. Проблема в том, что приложение используется несколькими пользователями, например, 5-6 одновременно, Проблема когда 5 пользователей, вошедших в систему одновременно, могут просматривать один и тот же список клиентов и могут вносить изменения в одного и того же клиента в одно и то же время,

Можно ли запретить пользователю просматривать одного клиента, который просматривается другим пользователем, например, если пользователь 1 просматривает и изменяет пользователя 1, то пользователь 2,3,4 не сможет видеть клиента 1 в их список клиентов. Любая помощь или учебники будут высоко оценены

1 Ответ

1 голос
/ 13 февраля 2012

у вас есть 2 варианта: пессимистичный или оптимистичный.

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

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

...