Wieviele Besucher (Registrierungen) kann WordPress ertragen?

  • Hallo, alle zusammen,

    folgendes Problem:
    es sollen viele, d. h. sehr viele Benutzer in die User-Tabelle eingetragen werden.
    Was das genau heißt, kann ich noch nicht mit Bestimmtheit sagen, aber vielleicht irgendwo zwischen 10.000 und 500.000 Usern. ;-)

    Nun meine Frage:
    ab welcher Größenordnung macht WordPress bzw. die Website schlapp?
    Wann wird der Aufbau der Website so verlangsamt, sodass die Leute lieber schreiend davon laufen?
    Ist die Anzahl der Datensätze für die Schnelligkeit überhaupt relevant (und wenn ja in welchem Maße) oder ist es viel bedeutsamer, wie häufig auf diese Tabelle zugegriffen wird?
    D. h. es werden sich zwischen 5.000 und 490.000 fast tote Karteileichen darin befinden, die nur selten, vielleicht 1-2 Mal im Monat benötigt werden, z. B. für eine Funktion, die an bestimmte Leute Mails versendet.

    Über Eure Antworten würde ich mich freuen.

    VG Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • die Frage ist der Aufruf der Userseiten... Admincenter==>User

    also im Adminbereich, wenn Du dir die registrierten ansehen magst,

    solltest du da Kaffee trinken wollen mit vielen Freundinnen in der etwas weiter entfernten Stadt und vorher da drauf geklickt haben,
    und das php Ausfühungslimit relativ hoch sein,

    dann könnte es sein, dass sich die Userübersichtsseite bereits aufgebaut hat, wenn Du zurückkommst....


    diese Userseite hat per default keinen Seitenumbruch...

    50tausend Einträge auf einer Seite


    :) Frage beantwortet ...??

    lg

  • Hehe, welch metaphorische Leichtigkeit. :-D ;)

    Aber welche Seite meinst du? -> /wp-admin/users.php ? Diese Seite ist bei mir paginiert, hat also nicht alle Nutzer auf einer Seite. :)

    Zum Thema: Auf der Webseite sollte das keine Beeinträchtigungen mit sich bringen, da die Usertabelle im Gegensatz zur Pages- oder Kategorie-Tabelle nur auf Anfrage genutzt wird, da die User ja nirgendwo in der Sidebar z.B. gelistet werden, was bei jedem Seitenaufruf angezeigt wird..

    wpseek.com - Die WordPress-Code-Suchmaschine

  • nunja... ich glaube bevor sie sich den kaffee geholt hat - oder auch nur mit dem wagen in die entfernte stadt aufgebrochen ist - hat die böse böse laufzeitbeschränkung des php-interpreters zugeschlagen und den versuch die userübersicht aufzurufen bereits unterbunden ;)

    btw: in dem fall sollte es imho aber doch möglich sein, mit einem entsprechenden plugin abhilfe zu schaffen - nur so als anregung.... nicht das ich wirklich zeit - und muse - hätte mich derzeit an einem solchen plugin zu verge.... äh ... versuchen....

    vG

    Arno

    Feedback ist Wichtig!|FAQ|Rückfragen im Forum!|Wenn ich mal was vergesse.... einfach mal sagen...

  • Hallo, alle zusammen,

    zunächst einmal herzlichen Dank für eure bisherigen Antworten.


    Alphawolf:

    Zitat

    Aber welche Seite meinst du?


    Zunächst meine ich das Frontend.
    Hier werden insbesondere bei der Ausgabe der Beiträge mit Hilfe der Funktionen the_author und the_author_url Benutzerdaten ausgegeben. Ich gehe davon aus, dass bei diesen Funktionen bei jedem Aufruf auf die Datenbank zugegriffen wird.
    Außerdem frage ich auch innerhalb des Frontends immer mal wieder die Userdaten ab. Um genau zu sein, handelt es sich da meistens um die Variable $user_level.
    Aus diesen Gründen ist es natürlich auch für das Frontend wichtig zu wissen, wie sich die Performance diesbezüglich ändert.

    Natürlich ist auch die Performance im Backend nicht unwichtig. Denn da wird ja auch immer wieder auf die Userdaten zurückgegriffen (z.B oben im Header wird immer der User-Name ausgegeben und jedesmal wird überprüft, ob die Berechtigung vorhanden ist, die Seite aufzurufen und. ggf. zu verändern). Deswegen auch hier die Frage: wie würde sich dies tatsächlich zunächst grundsätzlich auf die Performance auswirken?
    Was die Seite users.php betrifft, da habe ich mir bereits Gedanken gemacht und würde gerne die Benutzer, die eigentlich keine sind (und das sind die meisten), nicht anzeigen wollen, sondern nur auf einer von mir selbst erstellten Seite im Backend filtern und anzeigen lassen.
    Was diese Frage betrifft, habe ich gestern bereits ein eigenes Thema erstellt : http://forum.wordpress-deutschland.org/konfiguration/…ausfiltern.html

    Wenn ihr mir da behilflich sein könntet, wäre das natürlich super.


    Arno Simon:

    Zitat

    böse laufzeitbeschränkung des php-interpreters zugeschlagen

    Sind das die üblichen 30 Sekunden oder meinst Du damit was anderes?

    Zitat

    btw: in dem fall sollte es imho aber doch möglich sein, mit einem entsprechenden plugin abhilfe zu schaffen - nur so als anregung....


    Anregungen sind immer gut. Was wäre das für ein Plugin? Was muss es machen? Da stehe ich im Moment auf dem Schlauch.

    Gibt es evtl. eine Formel, womit man die Schnelligkeit errechnen könnte oder vielleicht irgendwo Erfahrungsberichte?

    Euch allen noch einen erfolgreichen und angenehmen Tag.
    VG Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • Da Wordpress intern die User über IDs verwaltete, sehe ich bei so Sachen the_author keine Probleme. Das ID-Feld ist ein numerisches Feld und zudem indiziert, Abfragen auch bei mehreren 100 Tsd. Datensätzen sollten im Millisekundenbereich ablaufen. Problematisch wären halt wirklich nur Userlisten, die auch einer Seite allle Nutzer anzeigen sollen oder so :-)

    Gruß
    Ingo

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

  • Da Wordpress intern die User über IDs verwaltete, sehe ich bei so Sachen the_author keine Probleme. Das ID-Feld ist ein numerisches Feld und zudem indiziert, Abfragen auch bei mehreren 100 Tsd. Datensätzen sollten im Millisekundenbereich ablaufen. Problematisch wären halt wirklich nur Userlisten, die auch einer Seite allle Nutzer anzeigen sollen oder so :-)

    Gruß
    Ingo

    Herzlichen Dank für Deine Infos.
    Es freut mich sehr, dass WP bei den Suchanfragen die Indexierung auch nutzt.
    Damit hast Du meine Bedenken fast ausgeräumt. Jetzt müssen "nur" noch die Probleme mit der Seite user.php geknackt werden. Die Frage ist nur wie? ;-)

    VG Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • Eine kleine Nachbemerkung darf nicht fehlen. Wie schnell das Ganze dann wirklich ist, hängt selbstverständlich auch von der Geschwindikeit der Datenbank ganz allgemein ab. Wenn der DB-Server ohnehin nicht besonders schnell ist, könnte es schon sein, daß er dadurch noch etwas langsamer wird.

    Gerade z.B. die Strato Shared-Webhostingpakete tun sich nicht mit hoher Datenbankperformance hervor. Bei meinem schnurpsel.de-Blog:

    Zitat

    32 queries. 3.353 seconds


    ist nicht so der Hit. Und das beim zweiten Aufruf der Seite, beim ersten waren es sogar mehr als 6 Sekunden.


    Gruß
    Ingo

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

  • Danke für Deinen Nachtrag.
    Wenn ich Dich richtig verstehe, dann betrifft dies aber alle Systeme und bezieht sich nicht nur auf WP.
    Dennoch sind Deine Infos sehr interessant. Nochmals Danke. :-D

    VG Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/


  • Arno Simon:
    Sind das die üblichen 30 Sekunden oder meinst Du damit was anderes?

    es sind die "üblichen 30 Sekunden" gemeint, ja. Diese Zeit fällt aber von Hoster zu Hoster unterschiedlich aus... Es gibt (gab) sogar Hoster, welche die Zeit mal auf 6 bis 10 Sekunden stehen hatten, was für komplexe Scripts / Seiten dann auch schon mal "voll in die Winsen" gegangen ist.

    Welches Zeitfenster Scripts bei Deinem Hoster zugestanden wird, musst Du selbst eruieren. In der Regel über die Angabe "max_execution_time" bei Ausgabe der PHP-Info.

    Anregungen sind immer gut. Was wäre das für ein Plugin? Was muss es machen? Da stehe ich im Moment auf dem Schlauch.

    Es muss Dir Funktionalitäten bereitstellen, die Benutzer z.B. nach Alphabet aufgeteilt anzeigen zu können und die Anzahl der anzuzeigenden Benutzer pro Seite einschränken zu können.

    Gibt es evtl. eine Formel, womit man die Schnelligkeit errechnen könnte oder vielleicht irgendwo Erfahrungsberichte?

    Eine Formel dafür zu finden ist IMHO recht müssig, da diese - wie auch bereits von Putzlowitsch erwähnt - von verschiedensten Faktoren abhängig währe. Die Geschwindigkeit der Datenbank spielt dabei nur eine Rolle. Weitere Faktoren währen: Wie sind die Abfragen gestaltet? Je weniger Felder der relevanten Tabellen abgezogen werden, desto schneller sind in der Regel auch die Antwortzeiten der Datenbanksysteme. Damit einher geht auch gleichzeitig die Größe der Felder. Für solche Übersichten sollte man z.B. keine großen Felder (komplette Beschreibungstexte o.ä.) heranziehen, wenn diese wirklich schnell laufen sollen.

    Die Abfrage der Datenbank spielt bei der Laufzeit in der Regel aber ohnehin die untergeordnetere Rolle. Es kommt nicht zu letzt darauf an, wie die Daten im verarbeitenden Coding aufbereitet werden und wie viele Daten - wie gesagt - angezeigt werden sollen. An dieser Stelle währe es IMHO von Vorteil auf der Übesichtsseite nur verhältnissmäßig wenige Daten anzuzeigen und auf dem Benutzernamen einen Link auf eine Detailseite einzuhängen, über welchen man dann detailiertere Informationen zu einem bestimmten Benutzer ansehen kann.


    vG

    Arno

    Feedback ist Wichtig!|FAQ|Rückfragen im Forum!|Wenn ich mal was vergesse.... einfach mal sagen...

  • Hallo Arno,

    vielen Dank für Deine Antworten.

    Zitat

    Es muss Dir Funktionalitäten bereitstellen, die Benutzer z.B. nach Alphabet aufgeteilt anzeigen zu können und die Anzahl der anzuzeigenden Benutzer pro Seite einschränken zu können.


    Wenn ich das richtig sehe, dann geht es darum die Select-Anweisung zu manipulieren, die beim Aufruf der Datei user.php ausgeführt wird.
    Und genau da liegt mein Problem, denn ich weiß nicht, wie ich das machen soll / kann, ohne dabei den Quellcode von WP zu ändern.
    Ich weiß nur, dass an anderer Stelle das möglich war. Leider habe ich vergessen, wo ich das gesehen habe und natürlich weiß ich auch nicht, ob ich hier die Select-Anweisung beeinflussen kann.
    Hast Du damit Erfahrungen und kannst mir dierekt weiterhelfen oder hast Du einen Tipp diesbezüglich für mich, z. B. wo ich weitere Infos dazu finden könnte?
    Vielleicht kennst Du auch einen anderen Weg?
    In jedem Fall möchte ich gerne ganze Benutzergruppen vor der Anzeige ausschließen, sodass nur die wenigsten Benutzer auf der Seite user.php angezeigt werden, z. B. die Administratoren, Redakteure, Autoren.

    Vielen Dank im Voraus.
    VG Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • nunja... mit einem plugin manipulierst du ja eben genau nicht den quellcode von wp, sondern stellst wp eine erweiterung in form von eigenem quellcode zur verfügung. dieser enthält dann - u.a. - die select-anweisung zum aufbau der übersichten und der darin enthaltenen benutzermengen.

    du kannst über so genannte action-hooks und entsprechende befehle zum einbinden eigener menüseiten in den backend die funktionalität der users.php (user.php habe ich bei mir nicht gefunden.. oder war zu flüchtig) auch komplett ersetzen und bist nicht darauf angewiesen selbige zu manipulieren.

    ich suche dir gleich mal ein paar links dazu aus dem codex raus.


    btw: geht es dir jetzt eigentlich um eine anzeige der benutzerliste im back- oder im frontend?

    vG

    Arno

    Feedback ist Wichtig!|FAQ|Rückfragen im Forum!|Wenn ich mal was vergesse.... einfach mal sagen...


  • btw: geht es dir jetzt eigentlich um eine anzeige der benutzerliste im back- oder im frontend?

    Also, ich stelle mir die Sache wie folgt vor:
    Es gibt ca. 30 Benutzer, die den bereits vorhandenen Benutzergruppen zugewiesen wurden. Diese sollen auch weiterhin auf der Seite user.php angezeigt werden können.
    Zukünftig möchte ich weitere Benutzergruppen einrichten, die z. B. Mitglieder und Newsletter heißen. Die Benutzer dieser neuen Benutzergruppen sollen dann nicht auf der Seite user.php angezeigt, sondern auf von mir selbst erstellten Seiten angezeigt und auch bearbeitet werden können.

    Im Frontend sollen die Benutzer nicht angezeigt werden, zumindestens noch nicht zu diesem Zeitpunkt. Im Notfall ließe sich das auch mit einer eigenen Selectanweisung realisieren.
    Kurz: es geht also um das Backend.


    Zitat

    nunja... mit einem plugin manipulierst du ja eben genau nicht den quellcode von wp, sondern stellst wp eine erweiterung in form von eigenem quellcode zur verfügung. dieser enthält dann - u.a. - die select-anweisung zum aufbau der übersichten und der darin enthaltenen benutzermengen.

    du kannst über so genannte action-hooks und entsprechende befehle zum einbinden eigener menüseiten in den backend die funktionalität der users.php (user.php habe ich bei mir nicht gefunden.. oder war zu flüchtig) auch komplett ersetzen und bist nicht darauf angewiesen selbige zu manipulieren.

    Das ist mir schon alles klar, wobei ich ungerne die gesamte Datei user.php ersetzen und ändern wollte. Denn sollte es möglich sein, dieses Problem mit einem kleinem Plugin zu lösen (indem man die Selectanweisung erweitert), dann verspreche ich mir davon, dass das Plugin bei den zukünftigen Updates von WP nicht geändert werden muss. Und das wäre der Vorteil davon.
    Wenn dies allerdings viele Stunden benötigt, dass alles herauszufinden, ob das geht, dann wäre dies natürlich unsinnig. ;-)


    Zitat

    ich suche dir gleich mal ein paar links dazu aus dem codex raus.


    1000 Dank im Voraus dafür.

    VG Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • ich habe in der Zwischenzeit die Datei user.php mir näher angesehen und bin dann auf die Variable query_from_where gestoßen.

    Diese wird in der Klasse WP_User_Search definiert und in einigen Funktionen (prepare_query, query) mit Werten belegt.

    Kann ich diese beispielsweise mit einem Hook ändern und wenn ja wie?
    Oder anders gefragt, gibt es Hooks, die die Änderung von solchen Variablen ermöglichen?

    Vielen Dank für eure Mühe im Voraus.
    Elke

    Es gibt keine dummen Fragen, es gibt nur dumme Antworten...
    http://u-portal.de/

  • ich denke, bevor dir wordpress schlapp macht, macht dein webserver bzw. die datenbank schlapp. also nen dicken serve rund du kannst dick user haben :D

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!