2015-11-05 173 views
0

我收到這在我的錯誤每次頁面被請求在我的web應用程序的時間記錄:Memcached的允許內存大小耗盡

PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 1463227 bytes) in /var/www/releases/20151104184006/vendor/doctrine/cache/lib/Doctrine/Common/Cache/MemcachedCache.php on line 96 

我已經部署到Ubuntu的LTS 14.04.1,用的Apache2和PHP 5.6。 14。我正在使用Capistrano來部署和設置使用capistrano-memcached 1.0的memcached。我將內存設置爲512 MB。我也嘗試過1024 MB,但它對這個問題沒有影響。

我已經安裝了https://github.com/lagged/memcache.php幫助調試的問題,我已經裝了幾頁,以觸發緩存,這裏是輸出:

一般高速緩存信息

PHP Version 5.6.14-1+deb.sury.org~trusty+1 
Memcached Host 1.127.0.0.1:11211 
Max Memcache Size 1.1 GBytes 
Memcache Server Information 
127.0.0.1:11211 Flush server 
Memcache Version Array 
Start Time 2015/11/05 10:56:30 
Uptime 26 minutes 
Memcached Server Version 1.4.14 (Ubuntu) 
Used Cache Size 905.8 KBytes 
Max Cache Size 1.1 GBytes 
Current Connections Count 9 
Total Connections So Far 69 
Flush CMD count 0 
Get CMD count 1393 
Set CMD count 390 
Items Evicted So Far 0 
Bytes Read So Far 964.3 KBytes 
Bytes Written So Far 1.9 MBytes 
Threads 4 
127.0.0.1:11211 Reset stats 
Host Status Diagrams 
Cache Usage Hits & Misses 
Free 1.1 GBytes (99.9%) 
Hits 1284 (92.2%) 
Used 905.8 KBytes (0.1%) 
Misses 109 (7.8%) 

高速緩存信息

Current Items(total) 390 (390) 
Hits 1284 
Misses 109 
Request Rate (hits, misses) 0.89 cache requests/second 
Hit Rate 0.82 cache requests/second 
Miss Rate 0.07 cache requests/second 
Set Rate 0.25 cache requests/second 
+1

該錯誤表示您只有128 MB可用內存。這通常是足夠的,但我會檢查你是否正確設置你的PHP內存設置並重新啓動Apache。此外,看看你是否能夠確切地找出哪些代碼觸發了這一點。你可能有一些海量的數據結構,不需要那麼龐大。 –

+0

memcached配置中的內存設置爲512,其中/爲什麼它表示我只有128MB可用內存?我也有memory_limit在PHP設置爲512 MB,並已重新啓動Apache。 – Patrick

+1

PHP致命錯誤:允許的內存大小爲134217728字節。 (1024分之134217728)/ 1024 = 128。錯誤是php內存限制,而不是memcached。 –

回答

0

PHP致命的錯誤r:允許的內存大小爲134217728字節。 (134217728/1024)/ 1024 == 128MB。錯誤是php內存限制,而不是memcached。

128 MB通常是足夠的,但我會檢查你是否正確設置你的PHP內存設置並重新啓動Apache。此外,看看你是否能夠確切地找出哪些代碼觸發了這一點。你可能有一些海量的數據結構,不需要那麼龐大。

相關問題