Я смотрю на функцию кеша в функции findAll cfWheels. Я немного опасаюсь его использования. Мои запросы не занимают так много времени, как они мне абсолютно необходимы, но небольшое увеличение скорости всегда приветствуется. Я получаю 10 мс из запрошенного кеша, который в противном случае занимает около 100 мс. Мне интересно, когда запись изменяется, я бы хотел, чтобы кеш очищался при следующем запуске. Не похоже, что в структуре есть какой-либо механизм или флаг, который позволил бы это сделать, поэтому мне пришлось бы самому устанавливать и сбрасывать флаги, что, скорее всего, в любом случае привело бы к чтению из базы данных. Я надеялся, что смогу установить кеш на целый день и обновлять при необходимости, это ужасно ошибочно? Скорее всего, я не собираюсь разрабатывать какую-либо функциональность, позволяющую кэшировать это приложение, но мне любопытно, стоит ли возвращаться к нему.
кэширование запроса, который редко изменяется в Coldfusion/cfWheels
comment
Стоит ли повторно посещать его, зависит от того, как часто выполняется запрос и как часто обновляются данные. Вы знаете это больше, чем мы.
- person Dan Bracuk   schedule 18.04.2013
Ответы (2)
Точнее, всякий раз, когда вы делаете новую запись в базе данных, используйте тег cfhttp для перезагрузки приложения.
person
Guest
schedule
18.04.2013
Это предполагает, что запись в базу данных выполняется через приложение cf, что не всегда так.
- person Dan Bracuk; 18.04.2013
Кэширование можно очистить, перезагрузив приложение. Это будет не ответ, который вы ищете, а решение, вот еще один подход. Вы можете перезагрузить приложение через <CFHTTP>
, отправив URL-адрес через <CFHTTP>
после добавления новой записи в базу данных. Если вы добавляете запись через сайт управления, вы можете перезагрузить общедоступный сайт, используя <cfhttp>
. :)
person
Sagar Bhinge
schedule
18.04.2013
Я думал, что кэширование относится к серверу, а не к приложению.
- person Dan Bracuk; 18.04.2013
@DanBracuk CfWheels, а также множество других фреймворков (на самом деле) позволяют кэшировать на нескольких уровнях (контент, функция, запрос). В случае ColdFusion кэширование может быть облегчено сервером, но иногда даже использование резервной копии плоского файла (xml/txt) может быть быстрее, чем подключение к базе данных, особенно если есть много объединений и записей. )
- person Daniel; 18.04.2013
Я обнаружил, что перезагрузка приложения может добавить дополнительное время, если изменения вносятся слишком часто, это может ухудшить ситуацию.
- person Daniel; 18.04.2013