{"id":174,"date":"2025-10-14T12:25:23","date_gmt":"2025-10-14T12:25:23","guid":{"rendered":"https:\/\/docs.pedagotchi.de\/?post_type=docs&#038;p=174"},"modified":"2025-10-14T12:26:12","modified_gmt":"2025-10-14T12:26:12","password":"","slug":"performance-request-verarbeitung","status":"publish","type":"docs","link":"https:\/\/docs.pedagotchi.de\/index.php\/docs\/performance-request-verarbeitung\/","title":{"rendered":"Performance &amp; Request-Verarbeitung"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><br>Das aktuelle Setup von <strong>pedagotchi<\/strong> l\u00e4uft mit folgender Konfiguration:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>dokku ps:scale pedagotchi web=2<\/li>\n\n\n\n<li>DATABASE_POOL__MIN=2<\/li>\n\n\n\n<li>DATABASE_POOL__MAX=30<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Damit stehen insgesamt <strong>zwei Web-Prozesse<\/strong> zur Verf\u00fcgung, die jeweils bis zu <strong>30 gleichzeitige Datenbankverbindungen<\/strong> nutzen k\u00f6nnen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Zusammen ergibt das <strong>60 parallele aktive Datenbankverbindungen<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Eingehende Anfragen, die nicht sofort verarbeitet werden k\u00f6nnen, werden <strong>kurzzeitig in einer internen Queue gepuffert<\/strong> (Server 8Gb RAM), bis eine Verbindung frei wird.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Diese Warteschlange erlaubt es, kurzfristige Lastspitzen abzufangen, ohne dass Requests sofort fehlschlagen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Unter realistischen Bedingungen (durchschnittliche Query-Zeit ca. 200\u2013250 ms, stabile CPU- und Speicherlast) kann das System etwa:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>ca. 400 Anfragen pro Sekunde<\/strong> verarbeiten<\/li>\n\n\n\n<li><strong>ca. 15.000 Anfragen in 30 Sekunden<\/strong> erfolgreich abarbeiten<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Die Queue erm\u00f6glicht es, kurzzeitig zwischen <strong>10.000 und 30.000 wartende Requests<\/strong> im Speicher zu halten, die anschlie\u00dfend nacheinander verarbeitet werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So k\u00f6nnen kurzfristige Traffic-Spitzen zuverl\u00e4ssig abgefangen werden, ohne dass das System instabil wird.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Hinweis:<\/strong> Bei dauerhaft h\u00f6herem Traffic oder l\u00e4ngeren Query-Zeiten sollte die Skalierung (ps:scale) bzw. das Connection-Pooling angepasst oder ein externer Message-Queue-Mechanismus in Betracht gezogen werden.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Das aktuelle Setup von pedagotchi l\u00e4uft mit folgender Konfiguration: Damit stehen insgesamt zwei Web-Prozesse zur Verf\u00fcgung, die jeweils bis zu 30 gleichzeitige Datenbankverbindungen nutzen k\u00f6nnen. Zusammen ergibt das 60 parallele aktive Datenbankverbindungen. Eingehende Anfragen, die nicht sofort verarbeitet werden k\u00f6nnen, werden kurzzeitig in einer internen Queue gepuffert (Server 8Gb RAM), bis eine Verbindung frei wird. [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"doc_category":[3],"doc_tag":[],"class_list":["post-174","docs","type-docs","status-publish","hentry","doc_category-systemueberblick"],"year_month":"2026-05","word_count":168,"total_views":0,"reactions":{"happy":0,"normal":0,"sad":0},"author_info":{"name":"jon","author_nicename":"jon","author_url":"https:\/\/docs.pedagotchi.de\/index.php\/author\/jon\/"},"doc_category_info":[{"term_name":"System\u00fcberblick","term_url":"https:\/\/docs.pedagotchi.de\/index.php\/docs-category\/systemueberblick\/"}],"doc_tag_info":[],"_links":{"self":[{"href":"https:\/\/docs.pedagotchi.de\/index.php\/wp-json\/wp\/v2\/docs\/174","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/docs.pedagotchi.de\/index.php\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/docs.pedagotchi.de\/index.php\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/docs.pedagotchi.de\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.pedagotchi.de\/index.php\/wp-json\/wp\/v2\/comments?post=174"}],"version-history":[{"count":2,"href":"https:\/\/docs.pedagotchi.de\/index.php\/wp-json\/wp\/v2\/docs\/174\/revisions"}],"predecessor-version":[{"id":176,"href":"https:\/\/docs.pedagotchi.de\/index.php\/wp-json\/wp\/v2\/docs\/174\/revisions\/176"}],"wp:attachment":[{"href":"https:\/\/docs.pedagotchi.de\/index.php\/wp-json\/wp\/v2\/media?parent=174"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/docs.pedagotchi.de\/index.php\/wp-json\/wp\/v2\/doc_category?post=174"},{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/docs.pedagotchi.de\/index.php\/wp-json\/wp\/v2\/doc_tag?post=174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}