Co stanie się, gdy spróbujesz dodać zmienną do APC i pamięć podręczna APC jest pełna? Czy automatycznie usuwa najmniej używaną zmienną z pamięci podręcznej?PHP APC: Co się dzieje, gdy pamięć podręczna APC jest pełna?
Odpowiedz
Zgodnie z APC: Runtime Configuration, "W przypadku braku pamięci podręcznej pamięć podręczna zostanie całkowicie wymazana, jeśli ttl jest równe 0. W przeciwnym razie, jeśli ttl jest większe niż 0, APC podejmie próbę usunięcia nieaktualnego wpisy. "
Jeśli jest niezerowa wartość TTL, spowoduje to usunięcie wpisów, których upłynął czas życia. ;) W przeciwnym razie usunie całą pamięć podręczną.
Zauważam, że tak naprawdę nie rozwiązuje problemu, jeśli pamięć podręczna kończy się z pamięci i masz zbyt wysoki czas TTL.
Z doświadczenia (uruchamiamy go w produkcji), jeśli nie ustawisz TTL lub TTL jest bardzo wysoki i nic nie jest nieaktualne, cała pamięć podręczna jest opróżniana (jak w pustym). Naprawdę chcesz tego uniknąć, ponieważ spowoduje to wzrost obciążenia na kolejną prośbę, z którą PHP musi sobie poradzić, ponieważ każdy plik potrzebny do APC będzie musiał skompilować i przechowywać w pamięci (co jest procesem nieco wolniejszym niż w ogóle nie ma włączonej pamięci podręcznej). Także jeśli odbierasz dużo ruchu i pustą pamięć podręczną, możesz doświadczyć szumu w pamięci podręcznej (zobacz google z powodu tego szataństwa).
Na marginesie, zobacz tę starą prezentację dla dość przybliżonego przewodnika po APC i rzeczy do obejrzenia na http://www.slideshare.net/oscon2007/os-gopal Coś może być nieaktualne, ale teoria nadal jest prawdziwa.
- 1. Co się dzieje, gdy pamięć podręczna varnish jest pełna?
- 2. APC (alternatywna pamięć podręczna PHP) Rzucanie mnóstwem informacji o PHP
- 3. aktywne APC w php
- 4. Jak działa APC (PHP Cache)?
- 5. PHP APC w trybie CLI
- 6. APC nie przyśpieszając PHP 5.4
- 7. Wyrzucanie z pamięci, gdy pamięć podręczna jest w 40% pełna
- 8. czym jest wewnętrzne debugowanie APC?
- 9. Wyłącz debugowanie APC?
- 10. PHP APC Cache, czy to działa po wyjęciu z pudełka?
- 11. Powtarzanie serii APC?
- 12. Jak Od fragment APC cache
- 13. Czy APC pojawi się w PHP7?
- 14. APC i lakierowanie
- 15. APC Odsłon/Misses and configuration
- 16. Co się dzieje, gdy moja() jest warunkowa?
- 17. Moja pamięć podręczna jest spłukiwana, dlaczego?
- 18. APC -> APCu/OPCache, słaba wydajność
- 19. Wyłącz/Wyłącz Magento Pełna pamięć podręczna na jednej stronie
- 20. Czego używać zamiast pamięci podręcznej użytkownika apc w php 5.5?
- 21. Czym jest rozproszona pamięć podręczna?
- 22. Zainstaluj oprogramowanie APC w systemie Windows
- 23. jak zainstalować apc dla php na mac osx mamp?
- 24. Grupy kluczy z pamięcią podręczną APC
- 25. Pamięć podręczna obiektów Ruby
- 26. Błąd podczas instalacji apc dla php na linux/centos
- 27. Memcache vs APC dla buforowania danych dla pojedynczego serwera
- 28. 5-minutowa pamięć podręczna plików w PHP
- 29. PHP: Używanie APC jako ogólnej pamięci podręcznej, XCache jako opcache, możliwe?
- 30. co się dzieje, gdy wątek wyrzuca wyjątek?
Link przestał działać :( – chiborg
Zaktualizował link, tak aby wskazywał działającą wersję tych samych slajdów. –
Cache Slam nie powinien być już problemem, ponieważ APC wprowadziło funkcję write_lock (http: //www.php. net/manual/en/apc.configuration.php # ini.apc.write-lock – marcovtwout