Я создаю веб-приложение в ASP.Net 4.0, которое должно поддерживать состояние в памяти, разделяемое между пользователями (лучше сказать, между группами пользователей). Это не стандартное приложение, и состояние, относящееся к группе пользователей, сохраняется / может / должно сохраняться только после выполнения группы действий (что может занять полчаса). Это требование не может быть изменено.
Насколько я знаю, я не могу полагаться на оперативную память, потому что перезапуск очистит мое состояние.
Единственное решение, которое я нашел, - это создание стандартного приложения (или службы Windows), мониторинг которого будет осуществляться через NamedPipe, в котором будет храниться вся информация.
(Для надежности я также реализую пользовательский цикл, в котором первый процесс завершается только после того, как все группы пользователей завершили свои действия).
Вы знаете какой-нибудь более простой способ или библиотеку, которая может помочь управлять состоянием этого приложения?
Есть ли у вас какие-либо предложения для этого дизайна, учитывая, что я ожидаю высокий уровень одновременного доступа к состоянию?
Спасибо.