Почему все мои файлы не кэшируются с кодом apc op? - PullRequest
6 голосов
/ 17 декабря 2011

Я использую APC (3.1.9) и Zend Framework, однако кэшируется только куча файлов (что-то вроде 10/400).

У вас есть идеи?Я использую заводские настройки для установки Debian.

РЕДАКТИРОВАТЬ: похоже, что только кэшируются файлы, которые я вручную вызываю с помощью require '';, но те, которые загружаются моим автозагрузчиком, не,Есть идеи?


Настройки времени выполнения

apc.cache_by_default    1
apc.canonicalize    1
apc.coredump_unmap  0
apc.enable_cli  0
apc.enabled 1
apc.file_md5    0
apc.file_update_protection  2
apc.filters 
apc.gc_ttl  3600
apc.include_once_override   0
apc.lazy_classes    0
apc.lazy_functions  0
apc.max_file_size   1M
apc.mmap_file_mask  
apc.num_files_hint  1000
apc.preload_path    
apc.report_autofilter   1
apc.rfc1867 0
apc.rfc1867_freq    0
apc.rfc1867_name    APC_UPLOAD_PROGRESS
apc.rfc1867_prefix  upload_
apc.rfc1867_ttl 3600
apc.serializer  default
apc.shm_segments    1
apc.shm_size    32M
apc.slam_defense    1
apc.stat    1
apc.stat_ctime  0
apc.ttl 0
apc.use_request_time    1
apc.user_entries_hint   4096
apc.user_ttl    0
apc.write_lock  1

вот скриншоты apc.php apc.php

Файлы, которыеполучают opcached php code

И index.php (ZF), где мне требуются файлы и регистрируют автозагрузчик в Zend_Loader_Autoloader.

opcached files

Ответы [ 2 ]

1 голос
/ 22 декабря 2011

Вероятно, одним из самых больших недостатков автозагрузки является то, что операционный кеш не кэширует автоматически загруженные файлы, как можно было бы надеяться (что-то в том, что автозагрузка - это время выполнения, а включать / требовать время компиляции. Или нет. Я не утверждаю, что понимаю это.).Подробнее здесь .

Хотя я никогда не пробовал, мне интересно, если бы ручное добавление вашего автозагрузочного файла в кеш путем вызова apc_compile_file () в автозагрузчике, по сути, решило бы эту проблему?

0 голосов
/ 20 января 2012

По некоторым причинам для apc.cache_by_default было установлено значение OFF, мои файлы не кэшировались правильно, что логично, учитывая эту конфигурацию, однако я до сих пор не понимаю, почему те, которые мне требовались вручную, на самом деле кэшировались.

...