我是一名 Linux 系统管理员,wordpress 服务器运行 5 种不同的 WordPress 安装。如果您只运行一个,我将评论要考虑的配置。
APC / PHP 版本,3.1.9 / 5.3.7
这是我完整的 apc.conf,
apc.enabled=1
apc.shm_segments=1
; I would try 32M per WP install, go from there
apc.shm_size=128M
; Relative to approx cached PHP files,
apc.num_files_hint=512
; Relative to approx WP size W/ APC Object Cache Backend,
apc.user_entries_hint=4096
apc.ttl=7200
apc.use_request_time=1
apc.user_ttl=7200
apc.gc_ttl=3600
apc.cache_by_default=1
apc.filters
apc.mmap_file_mask=/tmp/apc.XXXXXX
apc.file_update_protection=2
apc.enable_cli=0
apc.max_file_size=2M
;This should be used when you are finished with PHP file changes.
;As you must clear the APC cache to recompile already cached files.
;If you are still developing, set this to 1.
apc.stat=0
apc.stat_ctime=0
apc.canonicalize=1
apc.write_lock=1
apc.report_autofilter=0
apc.rfc1867=0
apc.rfc1867_prefix =upload_
apc.rfc1867_name=APC_UPLOAD_PROGRESS
apc.rfc1867_freq=0
apc.rfc1867_ttl=3600
;This MUST be 0, WP can have errors otherwise!
apc.include_once_override=0
apc.lazy_classes=0
apc.lazy_functions=0
apc.coredump_unmap=0
apc.file_md5=0
apc.preload_path
@Chris_O,您的配置在某些方面不是最佳的。
1. apc.shm_segments=3
如果您运行现代 Linux 发行版,您的 SHM 应该足够大。如果太小搜索如何设置 sysctl.conf 条目,您可以像这样检查。
#Check Max Segment size
cat /proc/sys/kernel/shmmax
在某些 BSD 或其他 Unix 或您无法控制的托管主机上运行时出现异常。没有连续段有缺点,请阅读 APC 的详细信息以获取该信息。
2. apc.enable_cli=1
BAD BAD BAD,这仅用于调试!每次运行 php-cli 时,它都会清除 APC 缓存。
3. apc.max_file_size=10M
不必要的和荒谬的!如果你有一个那么大的文件,它会吃掉那个小 32M SHM 的 1/3。即使您指定了 3,它们也不会像三个部分中的一个大段。不管 WP 甚至没有接近那个大小的单个 PHP 文件。
'希望我对他们的 apc.conf 有所帮助。