Optimize APC Caching

后端 未结 3 669
孤城傲影
孤城傲影 2021-01-30 15:00

here is a link to how my APC is running : [removed]

As you can see, it fills up pretty quickly and my Cache Full Count goes over 1000 sometimes

My website uses W

3条回答
  •  刺人心
    刺人心 (楼主)
    2021-01-30 15:48

    I work as a Linux Systems Admin, the wordpress server runs 5 different WordPress installs. If you are running just one, I will comment the configurations to consider.

    APC / PHP Versions, 3.1.9 / 5.3.7

    Here is my complete 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, your configuration is not optimal in a few aspects.

    1. apc.shm_segments=3

    If you run a modern Linux Distro, your SHM should be sufficiantly large enough. If it is too small search how to set sysctl.conf entries, You can check like this.

    #Check Max Segment size
    cat /proc/sys/kernel/shmmax
    

    Exception when running on certain BSD's, or Other Unix's, Or managed hosts you don't control. There is disadvantages to not having a contiguous segment, read details of APC for that info.

    2. apc.enable_cli=1

    BAD BAD BAD, this is for debug only! Every time you run php-cli, it clears the APC cache.

    3. apc.max_file_size=10M

    Unnecessary and ridiculous! If you had a file that big, it would eat 1/3rd of that small 32M SHM. Even though you specify 3, they don't just act like one big segment in three pieces. Regardless WP doesn't even have single PHP files even close to that size.

    'hope I helped people with their apc.conf.

提交回复
热议问题