Jednym z najczęściej używanych obecnie języków programowania przez miliony użytkowników jest PHP, który jest przydatny i praktyczny do tworzenia aplikacji i można go znaleźć na wszystkich dostępnych obecnie serwerach hostingowych.
Jedną z zalet używania PHP są świetne możliwości używania różnych rozszerzeń w ich domyślnej dystrybucji; dzięki któremu zastosowania PHP do tworzenia aplikacji są rozszerzane etapowo. Jednym z tych rozszerzeń jest OPcache, który pomaga poprawić ogólną wydajność PHP.
Z tego powodu dzisiaj Solvetic wyjaśni, jak zainstalować i skonfigurować OPcache w CentOS 7, aby był jeszcze bardziej produktywny z PHP.
Co to jest OPcache?OPcache został opracowany z myślą o poprawie wydajności PHP poprzez przechowywanie kodu bajtowego prekompilowanego skryptu w pamięci współdzielonej, eliminując w ten sposób potrzebę samego języka PHP do ładowania i analizowania skryptów w każdym żądaniu, co ostatecznie przekłada się na lepszą wydajność .
OPcache jest zawarty w PHP w wersji 5.5.0 i nowszych oraz jest dostępny za pośrednictwem PECL dla PHP w wersjach 5.2, 5.3 i 5.4.
Do skompilowania tego rozszerzenia PHP nie jest wymagana żadna zewnętrzna biblioteka, więc jest ona dostępna dla wszystkich dystrybucji, w których PHP działa bez problemu.
1. Jak zainstalować OPcache na CentOS 7 Linux?
Krok 1
Najpierw zainstalujemy repozytorium EPEL, a następnie repozytorium REMI za pomocą następujących poleceń:
mniam zainstaluj epel-release mniam zainstaluj http://rpms.remirepo.net/enterprise/remi-release-7.rpmWpisujemy literę s, aby potwierdzić pobranie i instalację.
POWIĘKSZAĆ
Krok 2
Później musimy zaakceptować odpowiednie klucze GPG:
POWIĘKSZAĆ
Krok 3
Kolejnym krokiem jest zainstalowanie yum-utils, czyli zbioru narzędzi rozszerzających domyślne funkcje yum, dzięki którym możliwe będzie zarządzanie repozytoriami yum, a także pakietami bez ręcznej konfiguracji i wielu innych zadań, m.in. ich montaż wykonujemy:
mniam zainstaluj mniam-utils
POWIĘKSZAĆ
Krok 4
Później musimy potwierdzić pobranie i instalację pakietów:
POWIĘKSZAĆ
Krok 5
Teraz, po zainstalowaniu yum-utils, musimy użyć yum-config-manager, aby włączyć repozytorium Remi jako domyślne repozytorium do instalowania różnych wersji i modułów PHP, wykonujemy następujące czynności w zależności od żądanej wersji:
Dla PHP 5,5
yum-config-manager --włącz remi-php55
Dla PHP 5.6
yum-config-manager --włącz remi-php56
Dla PHP 7.0
yum-config-manager --włącz remi-php70
Dla PHP 7.1
yum-config-manager --włącz remi-php71
Dla PHP 7,2
yum-config-manager --włącz remi-php72
POWIĘKSZAĆ
Krok 6
Na koniec przystępujemy do instalacji rozszerzenia OPcache i sprawdzamy wersję PHP, aby potwierdzić, że mamy zainstalowane rozszerzenie OPcache, w tym celu używamy następujących poleceń. Akceptujemy pobranie i instalację OPcache.
mniam zainstaluj php-opcache
POWIĘKSZAĆ
Krok 7
Weryfikujemy wersję PHP i posiadamy OPcache. Zwróć uwagę na dolny wiersz z Zend OPcache v7.0.5, oznacza to, że Opcache jest poprawnie zainstalowany w CentOS 7.
POWIĘKSZAĆ
2. Jak skonfigurować rozszerzenie Opcache w CentOS 7 Linux?
Krok 1
Ostatnim krokiem jest skonfigurowanie OPcache poprzez edycję pliku /etc/php.d/10-opcache.ini lub /etc/php.d/opcache.ini (w zależności od przypadku) za pomocą naszego pożądanego edytora:
nano /etc/php.d/opcache.iniTam możemy zastosować następujące wartości w celu uzyskania lepszej wydajności PHP:
opcache.enable_cli = 1 opcache.memory_consumption = 128 opcache.interned_strings_buffer = 8 opcache.max_accelerated_files = 4000 opcache.revalidate_freq = 60 opcache.fast_shutdown = 1
POWIĘKSZAĆ
Zmiany zapisujemy za pomocą następujących klawiszy:
Ctrl + O
Wychodzimy z edytora za pomocą następujących klawiszy:
Ctrl + X
Krok 2
Przechodzimy do ponownego uruchomienia serwera WWW, wykonując jedną z następujących linii:
systemctl restart nginx LUB systemctl restart httpdW pliku opcache.ini znajdują się następujące zmienne z ich zastosowaniem:
Ta opcja włącza pamięć podręczną kodu operacji. Po wyłączeniu kod nie jest zoptymalizowany ani buforowany
opcache.enable boolean
Ta opcja włącza pamięć podręczną opcode dla wersji CLI PHP
opcache.enable_cli wartość logiczna
Zarządza rozmiarem magazynu pamięci współdzielonej używanego przez OPcache, w megabajtach
opcache.memory_consumption integer
Jego funkcją jest zarządzanie ilością pamięci używanej do przechowywania ciągów w megabajtach.
opcache.interned_strings_buffer liczba całkowita
Twoim zadaniem jest zarządzanie maksymalną liczbą kluczy w tablicy skrótów OPcache, jej minimalna wartość to 200, a maksymalna wartość to 100000 w PHP <5.5.6 i 1000000 w późniejszych wersjach.
opcache.max_accelerated_files liczba całkowita
Odnosi się do maksymalnego procentu zmarnowanej pamięci, który jest dozwolony przed zaplanowaniem ponownego uruchomienia rozszerzenia.
opcache.max_wasted_percentage integer
Włączenie tej opcji umożliwia OPcache dodanie bieżącego katalogu roboczego do klucza skryptu, eliminując w ten sposób możliwe kolizje między plikami o tej samej nazwie podstawowej.
opcache.use_cwd wartość logiczna
Po włączeniu OPcache będzie pytać o zaktualizowane skrypty co każdą sekundę opcache.revalidate_freq.
opcache.validate_timestamps wartość logiczna
Mierzy częstotliwość sprawdzania uniksowych znaczników czasowych skryptów opartych na aktualizacji, w sekundach. opcache.revalidate_path boolean: po wyłączeniu istniejące pliki w pamięci podręcznej, które używają tej samej ścieżki include_path, będą ponownie używane przez OPcache.
opcache.revalidate_freq liczba całkowita
Po wyłączeniu wszystkie komentarze dokumentacji zostaną usunięte z pamięci podręcznej kodu operacji w celu zmniejszenia rozmiaru zoptymalizowanego kodu.
opcache.save_comments wartość logiczna
Wraz z jego włączeniem tworzona jest sekwencja szybkiego zamykania, która jest używana w taki sposób, że nie zwalnia każdego przydzielonego bloku, ale zależy od menedżera pamięci Zend Engine w celu optymalizacji zamykania PHP.
opcache.fast_shutdown wartość logiczna
Jest to maska bitowa, która kontroluje, które uprawnienia optymalizacji są wykonywane przez OPcache
opcache.optimization_level liczba całkowita
Jest to hack, który powinien działać tylko w celu uniknięcia błędów „Nie można ponownie zadeklarować klasy
opcache.dups_fix wartość logiczna
Wskazuje maksymalny rozmiar pliku, który będzie buforowany, w bajtach
opcache.max_file_size liczba całkowita
Odnosi się do czasu oczekiwania na rozpoczęcie zaplanowanego ponownego uruchomienia, jeśli pamięć podręczna nie jest aktywna, w sekundach
opcache.force_restart_timeout liczba całkowita
Tam są przechowywane dzienniki błędów OPcache
opcache.error_log string
Jest to główny model pamięci, z którego będzie korzystał OPcache
opcache.preferred_memory_model string
Twoim zadaniem jest ochrona pamięci współdzielonej przed nieoczekiwanymi zapisami podczas wykonywania skryptów
opcache.protect_memory wartość logiczna
Jego funkcją jest wywoływanie funkcji OPcache API tylko ze skryptów PHP, których ścieżka zaczyna się od określonego ciągu znaków
opcache.restrict_api ciąg
Ogólne funkcje OPcache to:
Zajmuje się kompilacją i buforowaniem skryptu PHP bez jego wykonywania
opcache_compile_file
Pobiera informacje o konfiguracji pamięci podręcznej
opcache_get_configuration
Umożliwia dostęp do informacji o stanie pamięci podręcznej
opcache_get_status
Unieważnij skrypt w pamięci podręcznej
opcache_invalidate
Wskazuje, czy skrypt jest buforowany w OPcache
opcache_is_script_cached
Pozwala zresetować zawartość pamięci podręcznej kodu opcode
opcache_reset
Jak widać, to rozszerzenie PHP przyda się, aby znacznie poprawić wydajność tego języka, a tym samym działać w znacznie bardziej kompleksowy sposób.