SaaS-подход к App_GlobalResources

Мы создаем приложение, в котором несколько сайтов работают на одном сайте IIS.

У нас есть веб-инструмент, с помощью которого веб-мастер может редактировать файлы "resx", например: /App_GlobalResources/es/Backend.es.resx

Однако есть две проблемы с этим:

  1. изменение этих файлов влияет на все сайты.
  2. Это также вызывает перезапуск всего сайта IIS.

Есть ли другой подход к этому? Я думаю, что сохранение строк в БД может быть плохой идеей, так как это приведет к сотням запросов SQL на страницу.

2 ответа

Используйте управляемый базой данных поставщик ресурсов, который поддерживает кэширование. И вам повезло, потому что кто-то другой уже сделал это

Предоставляете ли вы интерфейс для редактирования файлов resx? Если это так, кэшируйте их в области приложения и завершайте кэш при их обновлении. Затем сохраните их в базе данных. Таким образом, вы будете иметь скорость и гибкость. То, что данные находятся в базе данных, не означает, что они будут медленными. Кеш является решением. Конечно, первый поиск будет медленным, но последующий поиск будет настолько быстрым, насколько вы сможете.

Другие вопросы по тегам