Nextcloud Optimierungen für Synology Installation

Tuxnet

Benutzer
Mitglied seit
02. Jan 2019
Beiträge
616
Punkte für Reaktionen
74
Punkte
48
Ich habe gerade mal den cron auf Ajax umgestellt.
Und was soll ich sagen, es funktioniert.

Das ist natürlich keine Lösung, aber bringt mich ein Stück weiter. Den Weg den du gehst scheint der richtige zu sein. Über das Profil, aber warum funktioniert das nicht bei mir ?

NC und Redis laufen direkt auf der DS
 

Tuxnet

Benutzer
Mitglied seit
02. Jan 2019
Beiträge
616
Punkte für Reaktionen
74
Punkte
48
Wie hast du den extension = redis.so in deine *.ini gezaubert ?
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.158
Punkte für Reaktionen
912
Punkte
424
Gute Frage, laut meinen Notizen war das mal

Code:
Check for installed extension
/volume1/@appstore/PHP8.0/usr/local/lib/php80/modules/redis.so

/usr/local/etc/php80/cli/conf.d/extension.ini
extension = redis.so

/volume1/\@appstore/PHP8.0/misc/extension_list.json

"redis": {
"enable_default": true,
"desc": "The phpredis extension provides an API for communicating with the Redis key-value store."
},

Monitor activity

redis-cli MONITOR

ABER:
Aktuell ist die redis.so vorhanden, aber sowohl die genannte extension.ini als auch die extension_list.json enthalten die Einträge NICHT mehr.
Auch ein neues PHP Profile enthält dies standardmäßig nicht. mmmh.
 

Tuxnet

Benutzer
Mitglied seit
02. Jan 2019
Beiträge
616
Punkte für Reaktionen
74
Punkte
48
Sicher am besten mal die redis.so

Kannst du sie mir mal als zip hier hochladen ?
 

Tuxnet

Benutzer
Mitglied seit
02. Jan 2019
Beiträge
616
Punkte für Reaktionen
74
Punkte
48
Momentan habe ich einen docker ( webcron ) installiert, das läuft fürs erste mit Redis und apcu
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.158
Punkte für Reaktionen
912
Punkte
424
Deshalb taucht es auch in der GUI im Profile jetzt nicht mehr auf. Ist mir grad erst aufgefallen. Sprich in der php_profile....user_settings.ini steht die Extension drin und funktioniert auch. In der extension_list.json nicht mehr und deshalb wird sie auch in der Web Station nicht mehr angezeigt.

Und sobald ich den vHost mal neu speichere fliegt sich auch dort raus.

Argh.
 

Tuxnet

Benutzer
Mitglied seit
02. Jan 2019
Beiträge
616
Punkte für Reaktionen
74
Punkte
48
Das würde auch Sinn ergeben, habe hier für das testen alles deinstalliert ( Apache / php & webstation ) und natürlich alle Ordner gelöscht 😡
 

Tuxnet

Benutzer
Mitglied seit
02. Jan 2019
Beiträge
616
Punkte für Reaktionen
74
Punkte
48
Wenn du mal Zeit und Luft hast, würdest du mal ein packet Schnüren wo alle Dateien drin sind ? Am besten auf der DS zippen, das die Berechtigungen nicht verbogen werden

Ich würde dann mal hier ein wenig testen.

Mein Gedanken Gang -
Webstation deaktivieren
Apache stoppen
Dateien kopieren/editieren
Wieder alles starten und hoffentlich glücklich sein
 

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.158
Punkte für Reaktionen
912
Punkte
424
Na ja, auf dem oben genannten Weg bekomme ich es wieder in die GUI und kann es wieder auswählen nach Web Station / Apache Neustart.
Kaum aktiv springt auch der redis-cli MONITOR wieder aktiv.
 
  • Like
Reaktionen: Tuxnet

Tuxnet

Benutzer
Mitglied seit
02. Jan 2019
Beiträge
616
Punkte für Reaktionen
74
Punkte
48
Die redis.so ist bereits im Order enthalten.

Also benötige ich keine zip von dir.

Habe mal beide Dateien editiert, und sieht da der cron Funktioniert fehlerfrei mit Redis über das PHP Profil.

Besten Dank 👍
Alles läuft wieder
 
  • Like
Reaktionen: Fusion

BlueRazer

Benutzer
Mitglied seit
09. Okt 2019
Beiträge
69
Punkte für Reaktionen
26
Punkte
24
Guten Morgen,
ich handhabe es mittlerweile so, dass ich die Settings grundsätzlich für PHP 7.4 und 8.0 gleich anpasse.
Auch nach letztem PHP Update, mussten wieder Anpassungen an den Einträgen durchgeführt werden.
Hier mal eine Aufstellung, welche Dateien / Einträge ich immer im Auge behalte und pflege, damit Redis vernünftig läuft.
Vor letzten PHP Update, habe ich Redis übrigens vorher deinstalliert und nach den Updates direkt wieder installiert, dann die Settings korrigiert.

Im PHP Modul in der Web Station aktivieren / eintragen:

opcache.enable = 1
opcache.enable_cli = 1
apc.enabled = 1
apc.enable_cli = 1
opcache.interned_strings_buffer= 64
opcache.memory_consumption= 512

Erstellen, bzw. Inhalt der user_settings.ini:
/usr/local/etc/php80/cli/conf.d/user_settings.ini
Inhalt:
extension = apcu.so
extension = redis.so

[core]
memory_limit = 512M
upload_max_filesize = 512M
post_max_size = 512M

[apc]
apc.enabled = 1
apc.enable_cli = 1
apc.shm_size = 1024M
opcache.enable = 1
opcache.enable_cli = 1
apc.shm_size = 1024M

Extension EIntrag:
/usr/local/etc/php80/cli/conf.d/extension.ini
Ergänzung um:
extension = apcu (wenn nicht bereits vorhanden)
extension = redis.so

php-fpm.ini Extensiom Eintrag:
/volume1/@appstore/PHP8.0/misc/php-fpm.ini
Ergänzung um:
extension = redis.so

Vielleicht hilfts ja dem ein, oder anderen :)

EDIT:
Einträge in der config.php:


'memcache.local' => '\\OC\\Memcache\\Redis',
'memcache.distributed' => '\\OC\\Memcache\\Redis',
'filelocking.enabled' => true,
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => '127.0.0.1',
'port' => 6379,
'timeout' => 0,
'password' => '',
'dbindex' => 0,
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Tuxnet

Tuxnet

Benutzer
Mitglied seit
02. Jan 2019
Beiträge
616
Punkte für Reaktionen
74
Punkte
48
Was mich nur momentan ärger, ist das ich den cron und die occ Befehl über das PHP-Profil ausführen muss

Angenehmer war es so für mich
Code:
sudo -u http php80 -d memory_limit=1024M -f /volume1/web/cron.php

Aber da kommt ja immer die Fehlermeldung

Code:
OCP\HintException: [0]: Memcache \OC\Memcache\APCu not available for local cache (Is the matching PHP module installed and enabled?)

Hat hier jemand eine Idee, wo und wie ich was ändern muss, um zu meiner alten Vorgehensweise zurück zu kommen ?
 

TheGardner

Benutzer
Mitglied seit
30. Nov 2012
Beiträge
1.844
Punkte für Reaktionen
54
Punkte
74
bei mir auch so! Habs bisher 'liegen gelassen' bis hier jemand eine Idee präsentiert, welche (für mich) auf längere Zeit umsetzbar ist.
 

BlueRazer

Benutzer
Mitglied seit
09. Okt 2019
Beiträge
69
Punkte für Reaktionen
26
Punkte
24
Schon versucht, mal diesen Befehl mit dran zu hängen?
Leerzeichen hinter den ursprünglichen Befehl und dann
--define apc.enable_cli=1
 

Tuxnet

Benutzer
Mitglied seit
02. Jan 2019
Beiträge
616
Punkte für Reaktionen
74
Punkte
48
Ich habe eine weg gefunden, es wie früher ausführen zu könne


Code:
sudo -u http php80 -d memory_limit=1024M -f /volume1/web/cron.php

Folgende Datei editieren :

Code:
 mcedit /usr/local/etc/php80/cli/php.ini

folgendes ans ende setzen

Code:
extension = apcu.so
extension = redis.so

Zur Sicherheit habe ich mal die DS neu gestartet.

Jetzt funktioniert wieder alles so wie ich es will
 

TheGardner

Benutzer
Mitglied seit
30. Nov 2012
Beiträge
1.844
Punkte für Reaktionen
54
Punkte
74
Schon versucht, mal diesen Befehl mit dran zu hängen?
Leerzeichen hinter den ursprünglichen Befehl und dann
--define apc.enable_cli=1
Hab ich so in der Crontab (mit) verankert, aber Nextcloud meckert immer noch rum. Gehe ich den befehl an der Kommandozeile ein, dann:

Code:
OCP\HintException: [0]: Memcache \OC\Memcache\APCu not available for local cache (Is the matching PHP module installed and enabled?)
 

TheGardner

Benutzer
Mitglied seit
30. Nov 2012
Beiträge
1.844
Punkte für Reaktionen
54
Punkte
74
folgendes ans ende setzen

Code:
extension = apcu.so
extension = redis.so

Zur Sicherheit habe ich mal die DS neu gestartet.

Jetzt funktioniert wieder alles so wie ich es will
Auch probiert, gleicher Fehler weiter:

Code:
OCP\HintException: [0]: Memcache \OC\Memcache\APCu not available for local cache (Is the matching PHP module installed and enabled?)
 

Tuxnet

Benutzer
Mitglied seit
02. Jan 2019
Beiträge
616
Punkte für Reaktionen
74
Punkte
48
Poste mal bitte die geladenen Module

Code:
sudo -u http php80 -m
 

TheGardner

Benutzer
Mitglied seit
30. Nov 2012
Beiträge
1.844
Punkte für Reaktionen
54
Punkte
74
Code:
[PHP Modules]
apcu
bcmath
bz2
calendar
Core
ctype
curl
date
dba
dom
exif
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
imap
intl
json
ldap
libxml
mailparse
mbstring
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_dblib
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
readline
redis
Reflection
session
shmop
SimpleXML
soap
sockets
sodium
SPL
sqlite3
ssh2
standard
sysvmsg
sysvsem
sysvshm
tokenizer
xml
xmlreader
xmlwriter
xsl
zip
zlib

[Zend Modules]
 

Tuxnet

Benutzer
Mitglied seit
02. Jan 2019
Beiträge
616
Punkte für Reaktionen
74
Punkte
48
Beide Module werden geladen,
also ist irgendwo anderes der fahler
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat