Różnica między APC, eAccelerator, XCache, memcached, Redis

网络 营销ludzki użytekWitryna WordPress,RobićE-commerceIPromocja w sieci, aby poprawić szybkość działania strony internetowej, może poprawić się do pewnego stopniaSEOefekt.

zainstalowanyVestaCPpanel sterowania itp.LinuxPo systemie można wybrać niektóre rozszerzenia pamięci podręcznej, aby poprawić szybkość PHP.

Arkusz przyspieszenia rozszerzenia pamięci podręcznej CACHE 1

Często spotykane są te rozszerzenia pamięci podręcznej:

  1. APC
  2. eAkcelerator
  3. Pamięć podręczna
  4. memcached
  5. Redis

Jaka jest różnica między nimi?Jaka jest rola?Jak powinniśmy wybrać?

Chen WeiliangOdpowiedź udzielę w tym artykule.

XNUMX. Alternatywna pamięć podręczna PHP (pamięć podręczna APC)

Alternatywna pamięć podręczna PHP (pamięć podręczna APC) nr 2

Alternatywna pamięć podręczna PHP (APC Cache) to narzędzie do buforowania o otwartym kodzie źródłowym dla PHP, używane do buforowania kodu pośredniego PHP Opcode (pliku obiektowego).

Pamięć podręczna APC jest podzielona na 2 części:

  1. pamięć podręczna systemu
  2. Pamięć podręczna danych użytkownika

Pamięć podręczna systemu jest używana automatycznie:

  • Oznacza to, że APC buforuje wynik kompilacji kodu źródłowego pliku PHP, a następnie ponownie wywołuje znacznik czasu.
  • Jeśli nie wygasł, uruchom go z kodem z pamięci podręcznej.
  • Domyślna pamięć podręczna to 3600 (jedna godzina).

Ale to nadal marnuje dużo czasu procesora.

Dlatego możesz ustawić systemową pamięć podręczną tak, aby nigdy nie wygasała w pliku php.ini, a systemowa pamięć podręczna nigdy nie wygasała (apc.ttl=0).

Wykonanie tego wymaga jednak ponownego uruchomienia serwera WWW (np. Apache) po zmianie kodu PHP.

Obecnie test wydajności APC ogólnie odnosi się do pamięci podręcznej tej warstwy;

Dosłownie, alternatywna pamięć podręczna PHP (APC Cache) może być również uważana za rozszerzenie pamięci podręcznej w pamięci,

Jest to rozszerzenie pamięci podręcznej bazy danych.

XNUMX. eAkcelerator

eAccelerator to darmowy i otwarty akcelerator PHP.

  • Optymalizacja i dynamiczne buforowanie treści, które mogą poprawić wydajność buforowania skryptów PHP.
  • Dlatego skrypt PHP może być utrzymywany w stanie skompilowanym, aby zmniejszyć zużycie zasobów serwera.
  • Optymalizuje również skrypty w celu poprawy wydajności wykonywania, zwiększając wydajność kodu PHP o 1-10 razy.
  • eAccelerator nie obsługuje PHP5.5 ani nowszych.

Jak wynika z tekstu:eAccelerator to rozszerzenie akceleratora w PHP.

XNUMX. XCache

XCache to otwarty bufor/optymalizator kodu operacji, który poprawia wydajność PHP na serwerze.

  • Możesz uniknąć powtarzania procesu kompilacji, buforując skompilowane dane PHP w pamięci współdzielonej
  • Możesz też użyć bufora bezpośrednio do kompilacji kodu, aby poprawić szybkość.
  • Zwykle może zwiększyć współczynnik generowania stron od 2 do 5 razy i zmniejszyć obciążenie serwera.

Tak właściwie,XCache to rozszerzenie akceleratora PHP.

Po czwarte, memcached

Memcached to wysokowydajny system buforowania obiektów pamięci rozproszonej:

  • Używany w dynamicznych aplikacjach internetowych w celu zmniejszenia obciążenia bazy danych.
  • Zmniejsza liczbę odczytów bazy danych poprzez buforowanie danych i obiektów w pamięci, zapewniając w ten sposób szybkość dynamicznych stron internetowych opartych na bazie danych.

Można to zrozumieć z tekstu: rozszerzenie pamięci podręcznej, bardziej używane dla serwerów klastrowych, używane głównie do rozproszonej pamięci podręcznej.

Memcached jest uważany za rozszerzenie pamięci podręcznej bazy danych.

XNUMX. Redis

Redis to wydajna baza danych klucz-wartość.

Redis 3rd

  • Pojawienie się redis w dużym stopniu zrekompensowało brak pamięci typu keyalue, takiej jak memcached.
  • W niektórych przypadkach może uzupełniać relacyjne bazy danych.
  • W wielu przypadkach Redis jest często porównywany do memcached.

Wiele osób uważa, że ​​Redis może całkowicie zastąpić memcached, ponieważ typy danych Redis są bogatsze, a wydajność nie jest pod memcached:

  • Redis ma memcached, ale nie;
  • Memcached i redis mają oba.

O ile mi wiadomo, Weibo firmy Sina i inne produkty peryferyjne opierają się na Redis, który można uznać za potężny.

Różnica między pamięcią podręczną PHP a rozszerzeniem pamięci podręcznej bazy danych

1) Rozszerzenie pamięci podręcznej PHP:

  • eAccelerator, XCache to rozszerzenia pamięci podręcznej PHP.

2) Rozszerzenie pamięci podręcznej bazy danych:

  • Redis, memcached, APC cache to rozszerzenia pamięci podręcznej bazy danych.

(Zwykle dwie osoby muszą zainstalować tylko jedną z nich, nie bądź chciwy)

Po kilku testach stwierdzono, że pamięć podręczna danych Cache przekroczyła pewien próg, a wydajność APC nie była tak dobra, jak pamięć podręczna mcached.

Dlatego wybierając rozszerzenie pamięci podręcznej, niektórzy wybiorą kombinację xcache + memcached lub kombinację xcache + redis.

Jeśli podczas jednoczesnej instalacji wielu rozszerzeń pamięci podręcznej wystąpi błąd, zaleca się zainstalowanie tylko jednego rozszerzenia pamięci podręcznej i odinstalowanie pozostałych.

Podsumowanie porównania akceleratorów PHP

  • Dzięki testom eAccelerator jest najlepszą kombinacją czasu żądania i wykorzystania pamięci, ale eAccelerator nie obsługuje PHP5.5 ani nowszych.
  • Dzięki testowi prędkość z akceleratorem jest 3 razy większa niż bez akceleratora.

Powyższe jestAPC, eAccelerator, XCache, memcached, Redisrole i różnice między nimi.

发表 评论

Twój adres e-mail nie zostanie opublikowany. 必填 项 已 用 * 标注

Przewiń do góry