… опубликовано :
Недавно я читал о некоторых методах оптимизации ColdFusion для работы и наткнулся на то, что вы можете повысить эффективность кэширования ваших запросов, исключив функцию CreateTimeSpan (), используемую в атрибуте CachedWithin ваших тегов cfquery.
Теперь, вот мой отказ от ответственности: это не совсем моя идея. Я видел это на прошлой неделе, и для жизни я нигде не могу найти это, и я не могу вспомнить, где это было. (Похоже, это был Дом Слияния, но я не видел его там, если только не пропустил.) Автору, который придумал это, если вы прочитаете это, дайте мне знать, чтобы я мог отдать должное. Это довольно круто, и я решил поделиться с нашей аудиторией здесь.
CreateTimeSpan просто берет дни, часы, минуты и секунды и преобразует их в десятичное число. Это основано на днях. Таким образом, один день — 1, 1 день и 1 час — 1.0416666666667 и так далее. Таким образом, вы можете исключить вызов функции CreateTimeSpan (), выполнив небольшую младшую математику самостоятельно:
1 день: 1
1 час: 0,0416666666667
1 минута: 0.000694444444444
1 секунда: 1.15740740741
Если вы хотите вычислить различные дроби самостоятельно, вам просто нужно сделать это:
Часы: (ч / 24) = время
Минуты (м / 24) / 60 = время
Секунды = (с / 24) / 60/60 = временной интервал
Это даст вам номер, который вы можете добавить в cachedWithin, чтобы избежать вызова этой дополнительной функции. Имеет ли это заметное значение, я не могу сказать. Если у вас много кешированных запросов, это может произойти, особенно если они часто обновляются. Как и в случае любых методов оптимизации, вы действительно начнете замечать разницу по мере роста вашего приложения, даже если вы не видите его в зачаточном состоянии.
Исправление:
Чтобы отдать должное, где кредит должен быть, это на самом деле было на Доме Fusion, как я думал. Это было на самом деле в одном месте, я не смотрел: на первой странице. В разделе «Оптимизация» вы найдете больше информации. Спасибо автору Майклу Диновичу за указание на это.