Скользящее истечение локализованных ресурсов ASP.NET - PullRequest
2 голосов
/ 26 июня 2011

Предположим, что у нас есть 2 сайта myDomain.AU и myDomain.RU с одинаковым кодом и файлы локализованных ресурсов * .resx и * .ru.resx.Мы ожидали, что большинство английских пользователей будут использовать сайт AU, а большинство российских пользователей будут использовать сайт RU.Однако, если какой-либо пользователь домена AU запросит русскую версию, ресурсы .Ru будут загружены на сервер AU и будет показан русский язык.

Но я не хочу сохранять ресурсы .RU до тех пор, пока пул не будет перезапущен., но хочу выгрузить их, если никто не использует их.Поэтому я хочу иметь время истечения кэшированных локализованных ресурсов с настроенным временем истечения для каждого языка.Связанный вопрос был поднят в http://techsoda.wordpress.com/2008/01/04/aspnet-reset-that-resource/ и http://forums.asp.net/t/1201065.aspx/1

Рике Штроле в разделе «Создание поставщика и редактора ресурсов локализации ASP.NET, управляемых данными» (http://www.west -wind.com /Presentations / wwdbresourceprovider / ) имеет DbResourceConfiguration.ClearResourceCache (), который очищает весь кэш, но не только просрочен.

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

ОБНОВЛЕНИЕ: комментарий Рика ниже указал мне, что я делаю «Преждевременную оптимизацию».В любом случае, будет полезно узнать решение, если загрузка слишком большого количества ресурсов станет проблемой на производстве.

1 Ответ

1 голос
/ 26 июня 2011

Вместо того, чтобы использовать статический словарь в качестве кэша ресурсов (как в примере Рика Страла), почему бы не сохранить отдельные данные культуры в кэше ASP.NET, который реализует скользящее истечение срока действия из коробки?

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