недостаток кэширования sql? - PullRequest
0 голосов
/ 27 октября 2010

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

В общем, есть ли какой-то недостатокКеширование sql в обычной среде?

Спасибо

Ответы [ 3 ]

1 голос
/ 27 октября 2010

Ну, кеширование потребляет оперативную память, так что вам понадобится много этого.

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

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

0 голосов
/ 26 июня 2016

Все вышеуказанные пункты действительны.Ключевой задачей будет также аннулирование устаревших записей в кэше, а также синхронизация локального кэша на нескольких серверах.Возможно, вы захотите взглянуть на кеш сетки (например, Hazelcast, mem-cache) и данные Heimdall.Heimdall действует как прозрачный кеш и предоставляет встроенную логику аннулирования. Итак, само по себе кеширование sql - хорошая вещь.Это повышает производительность и может буферизовать sql-трафик от базы данных, обеспечивая преимущества масштабирования.

0 голосов
/ 27 октября 2010

Основная проблема с кэшированием в обычной среде - истечение срока хранения и устаревшие данные.

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

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

Если вы не аннулируете кэш или у вас есть таймеры, вы можете получить устаревшие данные.

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

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