У меня есть обработчик (например, list.ashx), который имеет метод, который извлекает большой набор данных, а затем захватывает только записи, которые будут отображаться на любой заданной «странице» данных. Мы разрешаем пользователям выполнять сортировку по этим результатам. Таким образом, при любом запуске страницы я буду извлекать набор данных, который я получил всего несколько секунд/минут назад, но переупорядочивая их или показывая следующую страницу данных и т. Д.Viewstate в обработчике .ashx?
Я хочу сказать, что мой набор данных действительно не изменилось. Обычно набор данных застревает в представлении страницы, но поскольку я использую обработчик, у меня нет такого удобства. По крайней мере, я так не думаю.
Итак, что является распространенным способом хранения виджета, связанного с текущей страницей данного пользователя при использовании обработчика? Есть ли способ взять набор данных, каким-то образом закодировать его и отправить обратно пользователю, а затем на следующий вызов, передать его обратно и затем перевести набор данных из этих бит?
Я не думаю, что сеанс будет хорошим местом для его хранения, так как у нас может быть 1000 пользователей, которые просматривают разные наборы данных разных данных, и это может привести к тому, что сервер окажется на коленях. По крайней мере, я так думаю.
Есть ли у кого-нибудь опыт в подобной ситуации, и можете ли вы дать мне какие-либо советы?
Прямо сейчас, возможно, всего 100 одновременных пользователей. В ближайшие несколько месяцев мы достигнем 1000. Мне нравится идея таймаута для кэширования. Можно ли точно узнать, освобождает ли IIS кеш во времени? Я имею в виду, есть ли какие-то настройки в IIS, которые мне нужно активировать, чтобы отключить тайм-ауты кэшей? Я не хочу использовать этот код, а затем узнаю, что IIS игнорирует тайм-аут. Я предполагаю, что тестирование с 1 минутой и проверка нулевого значения выберет это. Спасибо за ответ - это именно тот компромисс, который мне нужен. –