Azure несколько веб-ролей записи в базу данных одновременно, что вызывает проблемы - PullRequest
1 голос
/ 07 декабря 2010

У меня есть приложение ASP.NET MVC, которое ужасно страдает. В одном из способов публикации пользователь может отправить обновление. Это обновление занимает около 10 секунд для вычисления, а нетерпеливые пользователи иногда нажимают более одного раза. Я верю, что это вызывает состояние гонки обновления базы данных, и я не знаю, что делать. Где я должен сохранить переменную isUpdating, чтобы блокировать такие повторные запросы? Это не может быть веб-роликом, так как они независимы, и мой пользователь может оказаться на одном или другом. Также это не может быть база данных из-за состояния гонки. Я уверен, что должен быть стандартный путь. Я мог, например, увидеть сценарий, в котором я ограничиваю пользователей определенными веб-ролями. Это возможно, или есть лучший способ?

1 Ответ

2 голосов
/ 07 декабря 2010

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

Затем создайте рабочую роль, которая выбирает информацию из очереди и обновляет базу данных.

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