Если сгенерированный SQL работает, когда Вы скопировать/вставить он, я очень испытал бы желание сказать, что это - проблема с Вашим кодом.
У меня есть подобный класс DB, который вставляет запись в таблицу журнала, если ошибка SQL происходит. Я когда-то изменил стандартную программу, и она сделала что-то подобное, к которому Вы описываете, потому что она генерировала ошибку SQL, которая вызвала функцию, которая генерировала ошибку SQL, которая вызвала функцию.... Вы получаете идею :)
Что делает Ваш $this->db->query($sql);
функция делает? На могло бы стоить надеяться видеть, делает ли это что-то подобное, или просто делает прямое mysql_query
Если вы используете отображение памяти с файловой поддержкой (например, apc.mmap_file_mask = / tmp / apc.XXXXXX
), вы можете увидеть повышенный уровень ввода-вывода.
Попробуйте установить apc.mmap_file_mask
, чтобы использовать совместно используемую память (например, /apc.shm.XXXXXX
) или / dev / zero
(анонимная MMAP-память) . Если оставить этот параметр undefined, по умолчанию используется анонимная память mmapped.
Обычно файлы с расширением mmapped - отличная вещь:
Однако, по сравнению с хранением чего-либо исключительно в памяти, они влекут за собой дополнительные операции ввода-вывода - в значительной степени, когда файл постоянно изменяется. Обратной стороной отказа от использования файлов mmapped является отсутствие постоянства - ваш кеш не выдержит перезапуска, поскольку он хранится только в памяти.
Таким образом, можно предположить, что пока кеш заполнялся и стабилизировался, он подвергался самое большое изменение, которое приходилось постоянно записывать на диск; как только кэш был заполнен, ttl для каждого объекта замедлял скорость передачи данных в кэше, уменьшая изменения и уменьшая количество операций записи на диск.
Через несколько дней я хочу вернуться с некоторыми графиками. Изменение значительно улучшает эту ситуацию. Это сокращает все, кроме времени обслуживания ввода-вывода (я думаю, это потому, что больше нет простого чтения небольшого файла PHP, что является дешевым).
Нагрузка на сервер (она уже была довольно низкой, поэтому я не обнаружил изменения).