Мы рассматриваем возможность использования кэширования в памяти для нашего ASP. NET Core v3.1 приложения, работающего на AWS.
У меня есть несколько базовых c вопросов.
Наше приложение имеет семь отдельных списков продуктов. Каждый пользователь связан с одним из этих списков. Любой из этих списков может измениться, и их получение дорого, поэтому мы хотим их кэшировать. Каждый из семи кэшированных списков продуктов должен быть согласованным на всех наших серверах с балансировкой нагрузки. Если основной список продуктов изменяется, все пользователи, связанные с этим списком, должны видеть обновленную версию.
Я знаю, что для кэширования в памяти требуются липкие сеансы. Означает ли это, что каждый сервер будет иметь отдельный кеш, и что все пользовательские сеансы, «привязанные» к этому серверу, будут видеть один и тот же кеш? Если да, то как насчет пользователей, «прилипших» к другому серверу?
Если, например, изменяется LIST_4, как мы можем обновить кэшированные значения для всех других пользователей на всех серверах?
Возможно ли это вообще? Нужно ли нам go с чем-то вроде Redis?
Большое спасибо.