APC Cache use only 32M memory
Asked Answered
T

3

9

Here my config

extension = apc.so

apc.enabled = 1
apc.shm_size = 128M
apc.shm_segments = 1
apc.gc_ttl = 7200
apc.ttl = 0
apc.num_files_hint = 1024
apc.file_update_protection = 2
apc.max_file_size = 5M
apc.stat_ctime = 1
apc.mmap_file_mask=/tmp/apc.XXXXXX

apc.filter="-/usr/share/phpMyAdmin/.*"

APC INFO: APC Version 3.1.3p1 PHP Version 5.3.3 APC Host .._._ (mysite.com) (127.0.0.1) Server Software Apache/2.2.15 (CentOS) Shared Memory 1 Segment(s) with 30.0 MBytes (mmap memory, pthread mutex locking)

Runtime Settings apc.shm_size 128M

[[email protected] ~]# sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.tcp_syncookies = 1
kernel.shmmax = 134217728

What i must do to increase APC memory?

Teplitz answered 28/12, 2011 at 8:10 Comment(3)
Increase apc.shm_segments, not the segment size. Some operating systems have low limit on shared memory segment, your seems to have it set at 32 megs.Grubman
I try: apc.shm_size = 128M apc.shm_segments = 2, apc.shm_size = 32M apc.shm_segments = 4, and other... APC still use only 32MTeplitz
with or without the M doesn't work for me. regardless of what I put, apc.php still shows a shm size of 32M. any ideas why? I have the current version of apc and php 5.4.36Doer
S
7

Have a look at the manual: https://www.php.net/manual/en/apcu.configuration.php, furthermore, note the difference between size and maximum size.

Sundry answered 28/12, 2011 at 9:10 Comment(3)
Eureka! Work fine without M. Lines: apc.shm_size = 128 apc.shm_segments = 1Teplitz
Finally! This is strange, because it works with "M" on some platforms (like Amazon Linux) and doesn't work on Ubuntu. It is because PHP version which comes with those distros are different. Took me some time to figure out :)Lepidopteran
@Doer please add your question as a comment to T0xicCode's answer on removing the "M". I was just linking to the documentation.Sundry
S
3

It seems , at least in my case , that for this to work I have to add it to apcu.ini found in mods-available php folder(depending on version used) like this :

extension=apcu.so
apc.shm_size = "64M"
Sulphurate answered 1/8, 2018 at 9:58 Comment(2)
This one worked for me. It's very strange and says a lot about PHP as a language. As a separate comment, php.net offers the worst documentation I've seen.Significancy
This one also worked for me when editing /etc/php/8.3/mods-available/apcu.iniHugmetight
K
1

I'll repeat the solution here (because it was listed as a comment of the accepted solution):

You might need to remove the "M" from the apc.shm_size configuration value. The number is expected to be in megabytes, and some php versions will fail to parse the value and revert to the default (30 or 32 MB) if the given value is not a number.

Kierakieran answered 24/6, 2014 at 15:21 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.