OpCache - Empfohlene Konfiguration für Magento2

10

Ich arbeite mit einem Magento 2-Stack und verwende einige meiner Magento 1 OpCache-Konfigurationen wieder. Ich habe bereits gelernt, dass wir jetzt Kommentare aktivieren müssen, aber ich bin mir ziemlich sicher, dass andere Werte verbessert werden können. Hier ist meine aktuelle Konfiguration:

[opcache]
opcache.enable=1
opcache.enable_cli=0
opcache.memory_consumption=256
opcache.interned_strings_buffer=12
opcache.max_accelerated_files=65406 // thanks Mage2.Pro!
;opcache.max_wasted_percentage=5
;opcache.use_cwd=1
opcache.validate_timestamps=0
;opcache.revalidate_freq=2
;opcache.revalidate_path=0
;opcache.save_comments=0
;opcache.load_comments=0
opcache.fast_shutdown=1
opcache.enable_file_override=1
;opcache.optimization_level=0xffffffff
;opcache.inherited_hack=1
;opcache.dups_fix=0
;opcache.blacklist_filename=
;opcache.max_file_size=0
;opcache.consistency_checks=0
;opcache.force_restart_timeout=180
opcache.error_log=/var/log/php5/php5-opcache.error.log
opcache.log_verbosity_level=3
;opcache.preferred_memory_model=
;opcache.protect_memory=0

HINWEIS: Ich werde den Konfigurationsblock in der Frage (während er geöffnet ist) mit allen guten Antworten bearbeiten, um ihn für alle nützlich zu machen, und auch wiederholte Vorschläge vermeiden, wenn diesbezüglich ein Problem vorliegt oder einen Verstoß gegen die Site-Regeln darstellt. Lass es mich wissen.

MauroNigrele
quelle
Warum nicht den Opcache für CLI aktivieren?
MagePsycho

Antworten:

13

opcache.max_accelerated_files=16000ist definitiv niedrig für Magento 2.
find . -type f -print | xargs grep "<?php" | wc -lgibt mir 30736für meine Magento 2-Installation (mit einem im var/generationOrdner generierten Code und mit einigen installierten externen Erweiterungen).
Ich empfehle die Einstellung opcache.max_accelerated_files, 65406wenn Ihr Server eine einzelne Magento 2-Installation und keine anderen PHP-Sites hat.
Wenn Sie mehrere PHP-Sites auf dem Server haben, berücksichtigen Sie den Wert 130986.

Mage2.PRO
quelle
0

Ich würde auch empfehlen, die folgenden Einstellungen aufzunehmen, die meiner Meinung nach in PHP7 hinzugefügt wurden

; Allows calling OPcache API functions only from PHP scripts which path is
; started from specified string. The default "" means no restriction
;opcache.restrict_api=

; Mapping base of shared memory segments (for Windows only). All the PHP
; processes have to map shared memory into the same address space. This
; directive allows to manually fix the "Unable to reattach to base address"
; errors.
;opcache.mmap_base=

; Enables and sets the second level cache directory.
; It should improve performance when SHM memory is full, at server restart or
; SHM reset. The default "" disables file based caching.
;opcache.file_cache=

; Enables or disables opcode caching in shared memory.
;opcache.file_cache_only=0

; Enables or disables checksum validation when script loaded from file cache.
;opcache.file_cache_consistency_checks=1

; Implies opcache.file_cache_only=1 for a certain process that failed to
; reattach to the shared memory (for Windows only). Explicitly enabled file
; cache is required.
;opcache.file_cache_fallback=1

; Enables or disables copying of PHP code (text segment) into HUGE PAGES.
; This should improve performance, but requires appropriate OS configuration.
;opcache.huge_code_pages=1
Benutzer3610374
quelle