Beiträge von friend_of_root

    Die Statusseite gibt es auch (undokumentiert) mit Live-Aktualisierung

    https://gist.github.com/Jiab77/a942805…c5e33343da94fd8

    (Hier sollte man aber den Defaultnamen der Statusseite beibehalten und keinen eigenen wählen)

    Dein Post ist Spitze!!


    Ich füge noch hinzu die Quick and Dirty Version, ohne etwas zu installieren:

    STATUS:

    Code
    service php$(php -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')-fpm status


    Man erkennt damit auch schnell die Version, um einen Restart zu planen:

    Code
    systemctl restart php7.3-fpm.service

    Und kann dies dann verwenden, bzw. noch besser die universellere Variante:

    Code
    systemctl restart php$(php -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')-fpm.service

    Im Keyhelp Panel Benutzerverwaltung->Benutzer bearbeiten-> >_ PHP-FPM kann man unten eine Statusseite aktivieren.

    Vielleicht bringts was. Habe ich aber auch noch nie probiert.

    Das würde ich gerne verwenden, aber die Standard htaccess von WordPress overruled diese Statusseite und mir ist nicht klar, wohin ich umleiten müsste, um doch auf der FPM Statusseite zu landen.

    Obwohl der Fehler aktuell behoben ist gibt es noch eine Situation mit qtranslate bei der es gut wäre noch tiefer in die Ressourcen einzusteigen.

    Ich kann nun von einem weiteren Fortschritt berichten!!!

    Ich habe das LAPS Plugin (siehe oben) installiert und konnte im Admin sehen, dass z.B. bei der Seitenliste 7,4 Sekunden und >50MB auf ein Plugin entfallen, welches auf jeder Seite im Admin einmal gemacht wird.

    Nach Entfernung ging es runter von 8 Sekunden Wartezeit auf 0.6 Sekunden!

    Die Vorgangsweise mit dem Plugin ist top und hat sofort die Ursache gezeigt.

    --

    Konkret in meinem Fall: Es war ein Wordpress Updatecheck!

    Fazit: Verbesserte FPM Einstellungen und Profiling bringen die gewünschte Rootserver Performance zur Geltung.

    Ich habe den Verdacht, dass FPM Prozesse mit der Zeit voll und langsamer werden. Denn wenn ich die Einstellung (static, ondemand) ändere und quasi FPM neu gestartet wird ist es sehr schnell. Das klappt auch für einige Klicks, da ja diese Children sich mal füllen müssen.

    Und danach wird es gefühlt schnell wieder langsamer.

    Hierzu habe ich auch einen Artikel gefunden:

    Interessant zum Optimieren von PHP-FPM:
    "You can use pm.max_requests = 0 with static if you have 110% confidence in your current and future PHP scripts.
    However, it’s recommended to restart scripts over time. Set the # of requests to a high number since the point is to avoid pm overhead. So for example at least pm.max_requests = 1000 …depending on your # of pm.max_children and # of requests per second."

    https://haydenjames.io/php-fpm-tuning-u ... rformance/

    Nun lasse ich es mit 80 und max processes 1000 laufen und denke dies ist sicherer.
    Kann man FPM in dieser Hinsicht genauer untersuchen? Mit einer Statuspage oder dergleichen.

    Code
    pm = static
    pm.max_children = 150

    (Zudem starte ich php-fpm jede Nacht neu)

    Läuft auch alles sehr flott. :)

    Die Umstellung auf Static mit 80 Children hat eine starke Verbesserung gebracht! Top!

    Ich werde auch einen automatischen Restart von PHP-FPM einbauen.
    Muss man dies für jede PHP Version ausführen am Server (habe 7.3, 7.4 und 8.0).. bzw. wie findet man heraus welche Version?
    service php7.0-fpm restart

    Noch ein Input von mir:
    Es gibt ein paar Profilingtools für PHP. Sie werden als Modul eingebunden und könnten z.B. ein problematisches Plugin identifizieren, indem sie zeigen wie lang sich der CPU mit einer bestimmten Funktion aufhält.

    Hier eine Übersicht:
    https://sandro-keil.de/blog/php-profiling-tools/

    1. Wordpress Profiler (Open Source)
    https://github.com/Rarst/laps

    2. Beispiel mit Video und Chrome Plugin unten für Blackfire Profiler Wordpress Debugging (leider Subscription und ein Windows Tutorial):
    https://maheshwaghmare.com/profiling-with…-for-wordpress/

    Ich habe damit noch keine Erfahrung und hatte auch zunächst an Serverbenchmarks gedacht.

    Ich habe ein Wordpress welches auf einem Rootserver sehr langsam ist.
    Es hängt mit bestimmten Wordpressinstallationen zusammen. Hier wäre ein Profiling wirklich interessant.
    Das Panel, Joomla, und ein anderes frisches Wordpress sind etwas besser, aber auch nicht wirklich flott.

    Es sind Ladezeiten beim Backend Login oder Seitenübersicht von ca. 5-20 Sekunden.

    Das Frontend habe ich mit Caching ganz gut im Griff, aber auch nicht immer.

    Das Netcup Webhosting 8000 liefert bei mir viel bessere Ergebnisse.

    Dazu kommt, dass es ein sehr starker Server ist:
    RS 8000 G8 mit 64 GB Ram und 8 Core Intel(R) Xeon(R) Gold 6230 CPU @ 2.10GHz (amd64)

    Wie kann ich am besten herausfinden woran es liegt?

    Server Benchmark, Php Profiling, Wordpress Profiling

    Bisher habe ich mal geschaut:
    - MySql Log hat keine Slow Queries.
    - Kaum Einträge in den Errorlogs.. nur ein paar Notices.
    - Keine 404 bei einzelnen Dateien oder in der Console mit dem Chrome Webmaster Tools zu sehen

    - Der Server ist bereits ca. 1 Jahr in Betrieb (Media wurde im Serverpanel schon des öfteren optimiert)
    - Der Server hat nur 2,5% CPU Auslastung laut Keyhelp Panel.

    - Der Server hat nur 5% RAM Auslastung laut Keyhelp Panel.
    - Einstellungen Standard außer:

    - PHP FPM is on demand mit pm.max_children 10, pm.max_request 1000

    - PHP hat memory_limit 200M, max_input_vars = 4252
    - Es sind wenige Kunden auf dem Server.
    - Server Neustart bringt ev. kurz was. Schwer zu sagen.

    Sonst alles Standard.
    Würde mich über Inputs freuen.

    Ich kämpfe mit einem kleinen Webseitenproblem.
    Da sehe ich nach dem löschen des wordpress cache in der access.log einen Error 500.
    Also komme ich dem Problem näher denke ich.

    Dann darunter von meiner IP Adresse :

    "POST /c0nfig.php HTTP/1.1" 404 12178 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:67.0) Gecko/20100101 Firefox/67.0" 1064 17951

    ... Moment.. was tut sich denn hier? c0nfig.php scheint mir sehr unsympatisch.

    Hoffe es geht euch allen sehr gut!! Ich habe länger nichts geschrieben, da die Server top laufen. Und die letzten 18 Monate war ich schon ein bisschen durch den Wind mit dem ganzen Coronairrsinn. Es wirkt sich zu mindestens bei mir stark auf die Arbeit aus. Aber nun scheint es wieder besser zu laufen.

    Zum Glück brauche ich folgendes aktuell nicht :).. aber ich habe super Backups laufen mit Restic und einem 2ten Server fast ausschließlich für meine Backups und mache mir gerade Gedanken darüber:
    Wie funktioniert eigentlich das Rettungssystem, wenn man mit key-auth arbeitet? Wie übergibt man da die Keys?
    Und funktioniert eine root Passwortrücksetzung, wenn man auf key only gesetzt hat?

    Auflösung: Das hier war es tatsächlich. Der E-Mail-Server vom Sender war falsch konfiguriert.

    Danke für alle Hinweise! Und sorry, dass es kein Problem auf "unserer" Seite war. Im Nachhinein stand es bereits im Header, ich habe es nur nicht richtig interpretiert.

    Ja, ich hatte auch dieses Problem. Korrekt.

    Kunde Domain mit E-Mail angelegt.

    Meine Domain nur als Webseite mit A Pointing auch auf denselben Server angelegt.

    Kunde konnte mir keine E-Mail schicken.

    Bei Einstellungen war meine Domain als Emailfähig hinterlegt.

    Für DNS sollte es doch egal sein weil es ja nur mit A Record draufzeit und es keiner sieht dachte ich.. aber für lokale Zustellung versucht es der Server direkt.

    Hallo,

    Scheinbar hat sich die Einstellung des Dokumentenstamm für Hostingtarife geändert. Das war vorher eigentlich recht angenehm über das Plesk zu verwalten.

    "Diese Funktionalität können Sie ab sofort in unserem Customercontrolpanel (CCP) bei dem jeweiligen Tarif anpassen. Weitere Informationen finden Sie in unserem Wiki"
    Im Wiki finde ich leider nichts: https://www.netcup-wiki.de/wiki/Plesk_Ony…el_vornehmen.3F


    Wo kann ich denn diese Einstellung vornehmen? Ich habe unter Domain und unter dem Tarif geschaut.
    Ich möchte dies nicht in /httpdocs haben sondern in /httpdocs/domain.de

    Es handelt sich um einen normalen akutuellen Webhostingtarif, kein Reseller.

    Vielen Dank.

    Wie wäre es mit dns.he.net oder Cloudflare?


    Kannst dir natürlich auch ne nette Weboberfläche programmieren, die dann über die API die Einträge in netcups DNS bedient. Wenn mehr Kunden sowas brauchen könnte, würde sich der Aufwand eventuell sogar lohnen.

    Das ist eine gute Idee, schaue ich mir gerade genauer an. Danke!

    Ein anderer Ansatz ist:

    Snapshots ok.. aber nicht auf dieselbe Machine sondern auf ein Glacierähnliches Teil.

    Dadurch keine Speicheroptimierung notwendig und nicht nur 1-2 Snapshots möglich sondern wie oben 30 + 12

    Das wäre ja auch ein Lösungsansatz.

    Wenn man sich Snapshots runterlädt kann man die ja lokal auch entpacken und vergleichen. Mehr meinte ich mit dem Vergleichen gar nicht.

    Naja, es wäre auf viele Arten möglich dies umzusetzen.

    zB mit einem kleinen Programm welches unter root läuft.


    Dieses kommuniziert dann mit der Netcup Blackbox Backupserver.

    Wenn das Programm sich nicht x mal am Tag meldet, dann ist der Cronjob ausgefallen und man bekommt eine Nachricht.

    Ansonsten läuft alles automatisch. Damit ist der Faktor Mensch wieder ausgeschalten.

    Für bestimmte Konfigurationen (Datenbank im Ram etc.) klappt es vielleicht nicht, aber für 99% schon.

    Und durch die Wiederherstellbarkeit auf einen neuen Server kann man auch durchtesten, ob man zu den 1% gehört oder nicht.

    --

    Wie die Umsetzung erfolgt ist aber gar nicht mein Hauptinput. Es gibt einfach hier einen Bedarf, der Netcup noch besser machen würde.

    Nicht umsonst diskutiert ihr hier schon vom Antesten anderer Provider.

    Ich möchte einen Featurewunsch äußern, der wie ich finde über die Snapshots nicht perfekt gelöst ist.

    Featurewunsch:

    Tägliche Serverbackup von Netcup mit Möglichkeit dies auf einen weiteren Server zu replizieren

    Warum sollte dies jemand brauchen, der auch root ist?

    - Mensch macht manchmal Fehler. Wenn man sich selbst als Fehlerquelle im Punkto Backup ausklinken kann ist die gesamte Arbeit um ein vielfaches sicherer.

    - Direkt von Netcup angeboten folgt die Backupstrategie einem Standard, dem man vertrauen kann, der für alle gleich ist und den auch alle Kunden gleichermaßen verstehen.

    - Für Kunden oder Projekte die man betreut ist es einfach schön zu wissen, dass man nicht von den selbstgestrickten Backups einer Person abhängig ist.

    - Wenn man als root etwas "selbststrickt" wird es oft komplizierter als notwendig, auch schwieriger zu verstehen wenn der Server mal 180 Tage einfach läuft und besonders unübersichtlich für eine 3te Person falls man ein Projekt übergibt.

    - Auch weniger versierte Personen können sich zB. auf die Sicherheit des Servers konzentrieren, aber haben im Hinblick auf Backups eine gute verlässliche Lösung.

    - Dieses Backup sollte auf einem anderen Hostsystem abgelegt werden, sodass man eine tatsächliche Redundanz hat auch wenn der Host flöten geht. (Diese Transparenz hat man ja gar nicht als Kunde. Eventuell hat man 3 Server alle am selben Host, oder die VS wird einfach übersiedelt auf denselben Host.)
    - Wenn man auf die bestehende Snapshot Funktion verweist.. Man kann keine Snapshots machen, wenn der Server zu voll ist, es liegt am selben Host, und man muss nachher eine lästige Speicheroptimierung machen.
    - Es sollte über ein einfaches Interface für einen günstigen Preis (kein Traffic am Backup/Replikationsserver) angesprochen werden können.

    - Wenn das Backup weit genug zurückreicht hat man dann auch die Möglichkeit einen Vergleich anzustellen zwischen vergangenen Änderungen, die vielleicht bei einem Update zu Fehlern führen.

    Beispiel:

    Ich habe zB 5 Server für die ich jeweils 20 Euro zahle. Sobald man mehr Server hat wird es nun mal etwas unübersichtlicher und auch speicherintensiver.

    Mir wäre es sicher noch 30 Euro wert, wenn ich hier folgendes hätte:

    - Tägliches Backup mit 30 Tagen Vorhaltezeit

    - Monatliches Backup mit 12 Monaten Vorhaltezeit

    - Zurückspielbar auf ursprünglichen Server, oder neuen Server oder FTP Download

    Ich denke mir es wäre kein Problem, wenn diese Backups auf ein Storage gehen welches länger zum Auftauen benötigt, so wie bei einer der Lösungen des Onlineversandhändlers.

    Aber dafür eben wie beschrieben wirklich konkurrenzlos lange Vorhaltezeiten beinhaltet.