После создания концепции концепции сайта ASP.NET MVC и обеспечения надлежащего разделения интересов я заметил, что выполняю много дорогих избыточных обращений к базе данных для получения информации о текущем пользователе. *
Исторически, будучи настольным и обслуживающим персоналом, моей первой мыслью было кэширование результатов БД через несколько static
с. Не потребовалось много времени, чтобы увидеть, что это сохранит данные текущего пользователя по всему домену приложения для всех пользователей.
Затем я подумал об использовании HttpContext.Current
. Тем не менее, если вы поместите материал здесь, когда пользователь вышел из системы, тогда, когда они войдут в систему, ваши кэшированные данные будут устаревшими. Я мог бы обновлять это каждый раз, когда происходит вход / выход из системы, но я не могу сказать, правильно ли это выглядит. В отсутствие других идей, это то, куда я склоняюсь.
Что такое легкий способ точно кэшировать данные пользователя и избежать необходимости делать тонны вызовов базы данных?