APC净化率&碎片

时间:2013-02-17 08:06:39

标签: nginx apc varnish php

我在Nginx上运行了Magento,PHP-FPM,Varnish& APC设置。

APC在碎片和清除率方面都处于高位。

碎片在2小时内增加> 50%并缓慢变为100%。

更令人不安的是,Munin表明清洗率几乎都是100%。

我试图将shm大小增加到1G(APC通常使用大约200M,总RAM为6G)这没有帮助,并试图调整ttl:s没有任何运气。

清漆中是否存在导致APC持续清除的问题?

这是我的APC.ini

extension = apc.so
apc.enabled=1
apc.shm_segments=1
apc.shm_size=1024M
apc.num_files_hint=10000
apc.user_entries_hint=10000
apc.max_file_size=5M
apc.stat=0
apc.enable_cli = 1
apc.optimization=0
apc.cache_by_default=1
apc.slam_defense=0
apc.include_once_override=0
apc.ttl=3600
apc.user_ttl=7200
apc.gc_ttl = 600

apc.php:

**File Cache Information**
Cached Files    1053 ( 58.1 MBytes)
Hits    40172
Misses  1038
Request Rate (hits, misses) 102.26 cache requests/second
Hit Rate    99.68 cache requests/second
Miss Rate   2.58 cache requests/second
Insert Rate 10.41 cache requests/second
Cache full count    0

**User Cache Information**
Cached Variables    74 ( 1.2 MBytes)
Hits    374
Misses  5907
Request Rate (hits, misses) 15.59 cache requests/second
Hit Rate    0.93 cache requests/second
Miss Rate   14.66 cache requests/second
Insert Rate 0.18 cache requests/second
Cache full count    0

1 个答案:

答案 0 :(得分:1)

我发现有效保持APC理智的一个技巧是将gc_ttl设置为600,但保持ttl为0.这样效率较低,理论上可能导致踩踏非常繁忙的网站,但它停止碎片建立。您还需要确保不要在缓存中放置太多东西(即分配足够的内存)来降低清除率。

这可能听起来违反直觉,但这就是我今天在服务器上切换到这种方法时发生的事情:

Cache hit ratio Fragmentation Purge rate

This munin plug-in非常适合监控APC如何随时间变化,比尝试解密apc状态页更好。