У меня есть веб-страница, на которой отображается большой объем данных с сервера. Связь выполняется через ajax.
Каждый раз, когда пользователь взаимодействует и изменяет эти данные (скажем, пользователь A переименовывает что-то), он сообщает серверу выполнить действие, и сервер возвращает новые измененные данные.
Если пользователь B одновременно обращается к странице и создает новый объект данных, он снова сообщает серверу через ajax, и сервер вернется с новым объектом для пользователя.
На странице есть данные с переименованным объектом. А на странице B мы имеем данные с новым объектом. На сервере данные имеют как переименованный объект, так и новый объект.
Каковы мои настройки для синхронизации страницы с сервером, когда несколько пользователей используют его одновременно?
Такие опции, как блокирование всей страницы или сброс всего состояния пользователю при каждом изменении, скорее всего не будут устранены.
Если это помогает, в этом конкретном примере веб-страница вызывает статический веб-метод, который запускает хранимую процедуру в базе данных. Хранимая процедура вернет любые данные, которые она изменила, и не более. Затем статический веб-метод пересылает клиенту возврат хранимой процедуры.
Bounty Edit:
Как вы создаете многопользовательское веб-приложение, которое использует Ajax для связи с сервером, но избегает проблем с concurrency?
т.е. одновременный доступ к функциям и данные в базе данных без риска заражения данными или состояниями.