abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 03:55 | Nová verze

    Byla vydána Java 26 / JDK 26. Nových vlastností (JEP - JDK Enhancement Proposal) je 10. Odstraněno bylo Applet API.

    Ladislav Hagara | Komentářů: 0
    včera 23:55 | Nová verze

    Byla vydána nová verze 260 správce systému a služeb systemd (Wikipedie, GitHub). Odstraněna byla podpora skriptů System V. Aktualizovány byly závislosti. Minimální verze Linuxu z 5.4 na 5.10, OpenSSL z 1.1.0 na 3.0.0, Pythonu z 3.7.0 na 3.9.0…

    Ladislav Hagara | Komentářů: 3
    včera 18:11 | Nová verze

    Byla vydána nová verze 5.1 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Nová verze

    Bylo oznámeno vydání nové verze 8.1 "Hoare" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Doprovodný příspěvek na blogu Khronosu rozebírá kódování a dekódování videa pomocí Vulkan Compute Shaders v FFmpeg.

    Ladislav Hagara | Komentářů: 7
    včera 04:33 | Zajímavý projekt

    Byl představen open-source a open-hardware prototyp nízkonákladového raketometu kategorie MANPADS, který byl sestaven z běžně dostupné elektroniky a komponent vytištěných na 3D tiskárně. Raketa využívá skládací stabilizační křidélka a canardovou stabilizaci aktivně řízenou palubním letovým počítačem ESP32, vybaveným inerciální měřicí jednotkou MPU6050 (gyroskop a akcelerometr). Přenosné odpalovací zařízení obsahuje GPS,

    … více »
    NUKE GAZA! 🎆 | Komentářů: 35
    16.3. 14:22 | IT novinky

    Vědci z univerzity La Sapienza v Římě vyvinuli systém, který dokáže identifikovat jednotlivce pouze na základě toho, jak narušují signály Wi-Fi. Autoři tuto novou technologii nazvali WhoFi. Na rozdíl od tradičních biometrických systémů, jako jsou skenery otisků prstů a rozpoznávání obličeje, nevyžaduje tato metoda přímý fyzický kontakt ani vizuální vstupy. WhoFi může také sledovat jednotlivce na větší ploše než kamera s pevnou polohou; stačí, je-li k dispozici Wi-Fi síť.

    Ladislav Hagara | Komentářů: 11
    16.3. 04:22 | Nová verze

    SuperTux (Wikipedie), tj. klasická 2D plošinovka inspirovaná sérií Super Mario, byl vydán v nové verzi 0.7.0. Videoukázka na YouTube. Hrát lze i ve webovém prohlížeči.

    Ladislav Hagara | Komentářů: 7
    16.3. 03:11 | Zajímavý projekt

    Ageless Linux je linuxová distribuce vytvořená jako politický protest proti kalifornskému zákonu o věkovém ověřování uživatelů na úrovni OS (AB 1043). Kromě běžného instalačního obrazu je k dispozici i konverzní skript, který kompatibilní systém označí za Ageless Linux a levné jednodeskové počítače v ceně 12$ s předinstalovaným Ageless Linuxem, které se chystají autoři projektu dávat dětem. Ageless Linux je registrován jako operační

    … více »
    NUKE GAZA! 🎆 | Komentářů: 9
    15.3. 15:33 | Humor

    PimpMyGRC upravuje vzhled toolkitu GNU Radio a přidává alternativní barevná témata. Primárním cílem autora bylo pouze vytvořit tmavé prostředí vhodné pro noční práci, nicméně k dispozici je nakonec celá škála barevných schémat včetně možností různých animací a vizuálních efektů (plameny, matrix, bubliny...), které nepochybně posunou uživatelský zážitek na zcela jinou úroveň. Témata jsou skripty v jazyce Python, které nahrazují

    … více »
    NUKE GAZA! 🎆 | Komentářů: 4
    15.3. 14:33 | Nová verze Ladislav Hagara | Komentářů: 4
    Které desktopové prostředí na Linuxu používáte?
     (16%)
     (7%)
     (0%)
     (11%)
     (29%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1098 hlasů
     Komentářů: 27, poslední včera 19:26
    Rozcestník

    Dotaz: Nextcloud - PHP OPcache

    Petr Fiedler avatar 22.10.2023 01:05 Petr Fiedler | skóre: 35 | blog: Poradna
    Nextcloud - PHP OPcache
    Přečteno: 657×

    Zdravím
    na RPí 4B mám nainstalovaný Raspberry Pi 0S (Debian 12 bookworm) + Nextcloud + PHP 8.2. V NC se v nastavení pro správu objevilo tohle varování:

    Modul PHP OPcache není nastaven správně. Podrobnosti viz dokumentace.
    
    Vnitřní vyrovnávací paměť OPcache pro řetězce je téměř zaplněná.
    Aby bylo zajištěno, že ukládání řetězců do mezipaměti bude skutečně prováděno,
    je doporučeno přidat do nastavení PHP volbu opcache.interned_strings_buffer s hodnotou vyšší než 8.

    Na síti jsem našel, že je potřeba upravit soubor php.ini následovně (hodnotu "8" lze ponechat, protože daný řádek byl zakomentován):

    opcache.enable=1
    opcache.enable_cli=1
    opcache.memory_consumption=128
    opcache.interned_strings_buffer=8
    opcache.max_accelerated_files=10000
    opcache.revalidate_freq=2
    opcache.save_comments=1

    Soubor php.ini mám v systému min. 2x:

    /etc/php/8.2/apache2/php.ini
    /etc/php/8.2/cli/php.ini

    Upravil jsem jen ten v /cli a varování zmizelo. Setkal jsem se však i s názorem, že bych to měl takto nastavit i v /apache2. Jak je to prosím správně?

    V obou těch konfigurácích byly v sekci [opcache] všechny volby zakomentovány. Stačí, když jsem to nakonfiguroval jen takto, nebo bych tam ještě měl něco zmněnit? V té sekci [opcache] je tohle:

    [opcache]
    ; Determines if Zend OPCache is enabled
    ;opcache.enable=1
    
    ; Determines if Zend OPCache is enabled for the CLI version of PHP
    ;opcache.enable_cli=0
    
    ; The OPcache shared memory storage size.
    ;opcache.memory_consumption=128
    
    ; The amount of memory for interned strings in Mbytes.
    ;opcache.interned_strings_buffer=8
    
    ; The maximum number of keys (scripts) in the OPcache hash table.
    ; Only numbers between 200 and 1000000 are allowed.
    ;opcache.max_accelerated_files=10000
    
    ; The maximum percentage of "wasted" memory until a restart is scheduled.
    ;opcache.max_wasted_percentage=5
    
    ; When this directive is enabled, the OPcache appends the current working
    ; directory to the script key, thus eliminating possible collisions between
    ; files with the same name (basename). Disabling the directive improves
    ; performance, but may break existing applications.
    ;opcache.use_cwd=1
    
    ; When disabled, you must reset the OPcache manually or restart the
    ; webserver for changes to the filesystem to take effect.
    ;opcache.validate_timestamps=1
    
    ; How often (in seconds) to check file timestamps for changes to the shared
    ; memory storage allocation. ("1" means validate once per second, but only
    ; once per request. "0" means always validate)
    ;opcache.revalidate_freq=2
    
    ; Enables or disables file search in include_path optimization
    ;opcache.revalidate_path=0
    
    ; If disabled, all PHPDoc comments are dropped from the code to reduce the
    ; size of the optimized code.
    ;opcache.save_comments=1
    
    ; If enabled, compilation warnings (including notices and deprecations) will
    ; be recorded and replayed each time a file is included. Otherwise, compilation
    ; warnings will only be emitted when the file is first cached.
    ;opcache.record_warnings=0
    
    ; Allow file existence override (file_exists, etc.) performance feature.
    ;opcache.enable_file_override=0
    
    ; A bitmask, where each bit enables or disables the appropriate OPcache
    ; passes
    ;opcache.optimization_level=0x7FFFBFFF
    
    ;opcache.dups_fix=0
    
    ; The location of the OPcache blacklist file (wildcards allowed).
    ; Each OPcache blacklist file is a text file that holds the names of files
    ; that should not be accelerated. The file format is to add each filename
    ; to a new line. The filename may be a full path or just a file prefix
    ; (i.e., /var/www/x  blacklists all the files and directories in /var/www
    ; that start with 'x'). Line starting with a ; are ignored (comments).
    ;opcache.blacklist_filename=
    
    ; Allows exclusion of large files from being cached. By default all files
    ; are cached.
    ;opcache.max_file_size=0
    
    ; Check the cache checksum each N requests.
    ; The default value of "0" means that the checks are disabled.
    ;opcache.consistency_checks=0
    
    ; How long to wait (in seconds) for a scheduled restart to begin if the cache
    ; is not being accessed.
    ;opcache.force_restart_timeout=180
    
    ; OPcache error_log file name. Empty string assumes "stderr".
    ;opcache.error_log=
    
    ; All OPcache errors go to the Web server log.
    ; By default, only fatal errors (level 0) or errors (level 1) are logged.
    ; You can also enable warnings (level 2), info messages (level 3) or
    ; debug messages (level 4).
    ;opcache.log_verbosity_level=1
    
    ; Preferred Shared Memory back-end. Leave empty and let the system decide.
    ;opcache.preferred_memory_model=
    
    ; Protect the shared memory from unexpected writing during script execution.
    ; Useful for internal debugging only.
    ;opcache.protect_memory=0
    
    ; 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=
    
    ; Facilitates multiple OPcache instances per user (for Windows only). All PHP
    ; processes with the same cache ID and user share an OPcache instance.
    ;opcache.cache_id=
    
    ; 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.
    ; Under certain circumstances (if only a single global PHP process is
    ; started from which all others fork), this can increase performance
    ; by a tiny amount because TLB misses are reduced.  On the other hand, this
    ; delays PHP startup, increases memory usage and degrades performance
    ; under memory pressure - use with care.
    ; Requires appropriate OS configuration.
    ;opcache.huge_code_pages=0
    
    ; Validate cached file permissions.
    ;opcache.validate_permission=0
    
    ; Prevent name collisions in chroot'ed environment.
    ;opcache.validate_root=0
    
    ; If specified, it produces opcode dumps for debugging different stages of
    ; optimizations.
    ;opcache.opt_debug_level=0
    
    ; Specifies a PHP script that is going to be compiled and executed at server
    ; start-up.
    ; https://php.net/opcache.preload
    ;opcache.preload=
    
    ; Preloading code as root is not allowed for security reasons. This directive
    ; facilitates to let the preloading to be run as another user.
    ; https://php.net/opcache.preload_user
    ;opcache.preload_user=
    
    ; Prevents caching files that are less than this number of seconds old. It
    ; protects from caching of incompletely updated files. In case all file updates
    ; on your site are atomic, you may increase performance by setting it to "0".
    ;opcache.file_update_protection=2
    
    ; Absolute path used to store shared lockfiles (for *nix only).
    ;opcache.lockfile_path=/tmp

    NC používám sám a to pouze k synchronizaci kontaktů, kalendáře a poznámek.

    Odpovědi

    22.10.2023 11:52 X
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache
    V /apache je to povolene jako modul (.so) pro Apache2 a ve vychozim nastaveni zapnute = apache pri startu natahne modul. Pokud jsem to pochopil tak v apache/ chces:
    opcache.enable=1
    opcache.enable_cli=0
    opcache.file_cache_only=0
    
    v cli/ chces:
    opcache.enable=1
    opcache.enable_cli=1
    opcache.file_cache_only=1
    
    Tzn. apache to bude servirovat z pameti a CLI ze souboru. Je otazka jestli Nextcould nevola php z cronu nebo neco podobneho a nutne potrebuje optimalizaci i v CLI. Viz zde, zde a zde.
    Petr Fiedler avatar 22.10.2023 12:20 Petr Fiedler | skóre: 35 | blog: Poradna
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache

    Díky, že sis dal tu práci.
    Díky moc!

    Petr Fiedler avatar 22.10.2023 14:11 Petr Fiedler | skóre: 35 | blog: Poradna
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache

    Tak jsem to tak nastavil.

    $ sudo -u www-data php /var/www/html/nextcloud/updater/updater.phar 
    Sun Oct 22 14:02:41 2023 (1167): Fatal Error opcache.file_cache_only is set without a proper setting of opcache.file_cache

    /etc/php/8.2/apache2/php.ini:

    ; 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

    /etc/php/8.2/cli/php.ini:

    ; 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=1

    Mám pro opcache.file_cahe nastavit v /apache2/php.ini "0" a v /cli/php.ini "1"?

    Petr Fiedler avatar 22.10.2023 14:15 Petr Fiedler | skóre: 35 | blog: Poradna
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache

    Jen tak jsem to zkusil a fatal error je pryč. Otázka je, jestli je to správně?

    22.10.2023 14:46 X
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache
    To je cesta k te souborove cache => v apache/ to nech prazdne, tam to nema vyznam, a v cli/ napriklad:
    opcache.file_cache="/tmp/php-file-cache"
    Viz posledni odkaz.
    Petr Fiedler avatar 22.10.2023 18:05 Petr Fiedler | skóre: 35 | blog: Poradna
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache

    No jasně. Už to chápu.
    Díky

    Petr Fiedler avatar 22.10.2023 18:42 Petr Fiedler | skóre: 35 | blog: Poradna
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache

    Beru zpět. Mně to tam smysl dává. V /cli/php.ini je opcache v paměti zakázaná a jsou povolené jen soubory, takže tady musí logicky být uvedená cesta pro ty soubory. Naproti tomu v /apache2/php.ini je povoleno oboje, tedy i soubory - opcache.file_cache_ONLY=0, takže mi přijde logické, že by tam ta cesta měla být taky. Nebo se pletu?

    Petr Fiedler avatar 22.10.2023 18:44 Petr Fiedler | skóre: 35 | blog: Poradna
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache

    Prostě ty soubory z CLI jsou sdílené, takže v /apache2/php.ini by mělo být uvedeno, kde jsou, ne?

    22.10.2023 19:20 X
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache
    Mas pravdu v apache/ bude oboji:
    opcache.file_cache_only=0
    opcache.file_cache = "/tmp/adresar"
    
    Jen bacha aby po rebootu ten adresar existoval => postaru fstab, lepe systemd-tmpfiles.
    22.10.2023 19:28 X
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache
    Respektive ne-nutne to musi byt v /tmp, muze to klidne lezet nekde mimo web a prezije to i reboot(/var/www/html/.opcache; /var/www/opcache etc.).
    Petr Fiedler avatar 22.10.2023 20:41 Petr Fiedler | skóre: 35 | blog: Poradna
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache

    systemd-tmpfiles vypadá zajímavě. Vyzkouším ve VM a případně se tady pak doptám.

    Na tom 3 odkazu je pro /cli/php.ini uvedeno:

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

    Mám to povolit i v /apache2/php.ini?

    22.10.2023 21:23 X
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache
    Klidne, ta souborova cache se pouzije jen v pripade nedostupnosti cache z RAM, takze to nemuze mit velky vykonostni dopad.
    Petr Fiedler avatar 22.10.2023 21:26 Petr Fiedler | skóre: 35 | blog: Poradna
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache

    No jasný.

    22.10.2023 21:29 X
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache
    V vychozim nastaveni je to jiz povolene.
    Petr Fiedler avatar 22.10.2023 22:16 Petr Fiedler | skóre: 35 | blog: Poradna
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache

    Já to mám ve výchozím stavu zakomentované.

    22.10.2023 23:52 X
    Rozbalit Rozbalit vše Re: Nextcloud - PHP OPcache
    No to sice mas, ale to neznamena ze se promenna nepouziva. Znamena to jakou ma vychozi hodnotu. Podivej se napriklad na konfiguraci SSH.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.