Какая стратегия кэширования мне нужна в этом случае? - PullRequest
2 голосов
/ 18 октября 2011

У меня есть то, что я считаю довольно простым приложением. Служба возвращает некоторые данные, основанные на другой части данных. Простой пример, учитывая название штата, сервис возвращает столицу.

Все данные хранятся в базе данных SQL Server 2008. Большинство этих «статических» данных будут редко меняться. Время от времени его нужно будет обновлять, и, когда это произойдет, у меня не будет проблем с перезапуском приложения для обновления кэша, если он реализован.

Некоторые данные, которые являются более «динамическими», будут храниться в той же базе данных. Эти данные включают контакты, статистику и т. Д. И будут меняться чаще (от почасового до ежедневного или еженедельного). Эти данные будут связаны со статическими данными выше через внешние ключи (как SQL JOIN).

У меня вопрос, что именно я пытаюсь реализовать здесь? и как мне начать это делать? Я знаю, что статические данные будут кэшироваться, но я не знаю, с чего начать. Я пытался искать, но придумал столько всего, и я не уверен, с чего начать. Рекомендации для учебников также будут оценены.

Ответы [ 2 ]

2 голосов
/ 18 октября 2011

Вам не нужно ничего кэшировать, пока у вас не возникнут проблемы с производительностью.Пока у вас не возникнет заметная проблема и вы не измерите уровни своего приложения, чтобы определить, что ваша база данных на самом деле является узким местом, которым она редко является, начинайте изучать данные кэширования.Это всегда компромисс, память против процессора против доступности данных в реальном времени.Нет причин делать ваше приложение более сложным, чем нужно.

0 голосов
/ 18 октября 2011

Чрезвычайно простым «выигрышем» здесь (я предполагаю, что вы используете WCF здесь) было бы использование встроенного в среду декларативного механизма кэширования на основе атрибутов. Его легко настроить и управлять, но вам нужно проанализировать свои сценарии использования, чтобы убедиться, что он применяется в нужных местах, чтобы извлечь из этого пользу. Эта статья является хорошей отправной точкой.

Кроме того, я бы порекомендовал заглянуть в одну из многих книг WCF, посвященных таким высокоуровневым концепциям, как кеширование, и попытаться выяснить, применимы ли их шаблоны реализации к вашему дизайну.

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