{"id":33707,"date":"2019-10-31T21:54:17","date_gmt":"2019-10-31T18:54:17","guid":{"rendered":"https:\/\/prohoster.info\/blog\/inogda-bolshe-eto-menshe-kogda-umenshenie-nagruzki-privodit-k-uvelicheniyu-zaderzhki\/"},"modified":"2019-10-31T21:54:17","modified_gmt":"2019-10-31T18:54:17","slug":"inogda-bolshe-eto-menshe-kogda-umenshenie-nagruzki-privodit-k-uvelicheniyu-zaderzhki","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/inogda-bolshe-eto-menshe-kogda-umenshenie-nagruzki-privodit-k-uvelicheniyu-zaderzhki","title":{"rendered":"Manchmal ist mehr weniger. Wenn eine Verringerung der Last zu einer erh\u00f6hten Latenz f\u00fchrt.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Wie im <noindex><a rel=\"nofollow\" href=\"https:\/\/mahdytech.com\/2019\/01\/13\/curious-case-999-latency-hike\/\">in den meisten Beitr\u00e4gen<\/a><\/noindex>, gab es ein Problem mit dem verteilten Dienst, nennen wir ihn Elvin. Diesmal habe ich das Problem nicht selbst entdeckt, die Jungs aus der Kundenabteilung haben mich informiert.<\/p>\n<p>Eines Morgens wachte ich von einer unzufriedenen E-Mail wegen gro\u00dfer Verz\u00f6gerungen bei Elvin auf, den wir in naher Zukunft starten wollten. Insbesondere hatte der Kunde eine Verz\u00f6gerung im 99. Percentil von etwa 50 ms, was weit \u00fcber unserem Budget f\u00fcr Verz\u00f6gerungen liegt. Es war erstaunlich, da ich den Dienst sorgf\u00e4ltig getestet hatte, insbesondere die Latenz, die ein h\u00e4ufiges Beschwerdethema ist.<\/p>\n<p>Bevor ich Elvin zum Testen freigab, habe ich viele Experimente mit 40.000 Anfragen pro Sekunde (QPS) durchgef\u00fchrt, und alle zeigten eine Verz\u00f6gerung von weniger als 10 ms. Ich war bereit zu behaupten, dass ich mit ihren Ergebnissen nicht einverstanden war. Aber als ich noch einmal auf die E-Mail schaute, fiel mir etwas Neues auf: Ich hatte die Bedingungen, die sie erw\u00e4hnten, nicht genau getestet; ihre QPS war viel niedriger als meine. Ich hatte bei 40k QPS getestet, sie nur bei 1k. Ich f\u00fchrte ein weiteres Experiment durch, diesmal mit einem niedrigeren QPS, nur um sie zufriedenzustellen.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nDa ich dar\u00fcber in meinem Blog schreibe, haben Sie wahrscheinlich schon verstanden: Ihre Zahlen waren korrekt. Ich habe meinen virtuellen Clienten immer wieder \u00fcberpr\u00fcft, und das Ergebnis blieb dasselbe: eine niedrige Anzahl von Anfragen erh\u00f6ht nicht nur die Latenz, sondern auch die Anzahl der Anfragen mit einer Latenz von \u00fcber 10 ms. Mit anderen Worten, w\u00e4hrend bei 40k QPS etwa 50 Anfragen pro Sekunde die 50 ms \u00fcberschritten, waren es bei 1k QPS pro Sekunde 100 Anfragen \u00fcber 50 ms. Ein Paradox!<\/p>\n<p><img decoding=\"async\" alt=\"Manchmal ist mehr weniger. Wenn eine Verringerung der Last zu einer erh\u00f6hten Latenz f\u00fchrt.\" src=\"\/wp-content\/uploads\/2019\/05\/d181859376e2befad9ed631e8f8ff168.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h1>Den Suchkreis eingrenzen<\/h1>\n<p>\nWenn man mit dem Problem der Latenz in einem verteilten System mit vielen Komponenten konfrontiert ist, sollte man zun\u00e4chst eine kurze Liste der Verd\u00e4chtigen erstellen. Lassen Sie uns etwas tiefer in die Architektur von Elvin eintauchen:<\/p>\n<p><img decoding=\"async\" alt=\"Manchmal ist mehr weniger. Wenn eine Verringerung der Last zu einer erh\u00f6hten Latenz f\u00fchrt.\" src=\"\/wp-content\/uploads\/2019\/05\/9b10198772b0e53890eb94d5e5c9afd0.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEin guter Ausgangspunkt ist die Liste der durchgef\u00fchrten Eingabe-\/Ausgabe\u00fcberg\u00e4nge (Netzwerkanfragen\/Datensuche usw.). Lassen Sie uns herausfinden, wo die Latenz liegt. Neben der offensichtlichen Eingabe\/Ausgabe mit dem Client geht Elvin einen Schritt weiter: Er greift auf den Datenspeicher zu. Dieses Speicher arbeitet jedoch in einem Cluster mit Elvin, daher sollte die Latenz dort geringer sein als beim Client. Also, die Liste der Verd\u00e4chtigen:<\/p>\n<ol>\n<li>Netzwerkanfrage vom Client zu Elvin.\n<\/li>\n<li>Netzwerkanruf von Elvin zum Speichersystem.\n<\/li>\n<li>Disk-Suche im Speichersystem.\n<\/li>\n<li>Netzwerkanruf aus dem Speichersystem zu Elvin.\n<\/li>\n<li>Netzwerkanruf von Elvin zum Client.<\/li>\n<\/ol>\n<p>\nVersuchen wir, einige Punkte auszuschlie\u00dfen.<\/p>\n<h3>Das Speichersystem ist nicht das Problem.<\/h3>\n<p>\nZuerst habe ich Elvin in einen Ping-Pong-Server umgewandelt, der keine Anfragen bearbeitet. Er sendet leere Antworten zur\u00fcck, wenn er eine Anfrage erh\u00e4lt. Wenn die Latenz sinkt, liegt das Problem bei Elvin oder beim Speichersystem \u2013 nichts Ungew\u00f6hnliches. Im ersten Experiment erhalten wir folgendes Diagramm:<\/p>\n<p><img decoding=\"async\" alt=\"Manchmal ist mehr weniger. Wenn eine Verringerung der Last zu einer erh\u00f6hten Latenz f\u00fchrt.\" src=\"\/wp-content\/uploads\/2019\/05\/bd8fed2b2cc0d07946d1c4a868ae36b3.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nWie wir sehen, zeigt der Ping-Pong-Server keine Verbesserungen. Das bedeutet, dass das Speichersystem die Latenz nicht erh\u00f6ht und die Liste der Verd\u00e4chtigen halbiert wird:<\/p>\n<ol>\n<li>Netzwerkanfrage vom Client zu Elvin.\n<\/li>\n<li>Netzwerkanruf von Elvin zum Client.<\/li>\n<\/ol>\n<p>\nToll! Die Liste wird schnell k\u00fcrzer. Ich dachte, ich h\u00e4tte die Ursache beinahe herausgefunden.<\/p>\n<h3>gRPC<\/h3>\n<p>\nJetzt ist es Zeit, Ihnen einen neuen Spieler vorzustellen: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/grpc\/grpc\">gRPC<\/a><\/noindex>. Es handelt sich um eine Open-Source-Bibliothek von Google f\u00fcr die Interprozesskommunikation. <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Remote_procedure_call\">RPC<\/a><\/noindex>. Obwohl <code>gRPC<\/code> gut optimiert und weit verbreitet ist, benutze ich es zum ersten Mal in einem System dieser Gr\u00f6\u00dfenordnung, und ich erwartete, dass meine Implementierung \u2013 gelinde gesagt \u2013 suboptimal sein w\u00fcrde.<\/p>\n<p>Vorhandensein von <code>gRPC<\/code> im Stack hat eine neue Frage aufgeworfen: K\u00f6nnte es meine Implementierung oder die Ursache der Verz\u00f6gerung sein? <code>gRPC<\/code> Wir f\u00fcgen einen neuen Verd\u00e4chtigen zur Liste hinzu:<\/p>\n<ol>\n<li>Der Client ruft die Bibliothek auf <code>gRPC<\/code>\n<\/li>\n<li>Die Bibliothek <code>gRPC<\/code> f\u00fchrt einen Netzwerkaufruf der Bibliothek auf dem Client durch <code>gRPC<\/code> auf dem Server\n<\/li>\n<li>Die Bibliothek <code>gRPC<\/code> fragt Elvin an (keine Operation im Fall des Ping-Pong-Servers)<\/li>\n<\/ol>\n<p>\nUm Ihnen zu zeigen, wie der Code aussieht, unterscheidet sich meine Implementierung des Clients\/Elvin nicht wesentlich von den client-server <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/grpc\/grpc\/tree\/v1.19.0\/examples\/cpp\/helloworld\">Beispielen f\u00fcr asynchrone Programmierung.<\/a><\/noindex>.<\/p>\n<blockquote><p><i>Hinweis: Die obige Liste ist etwas vereinfacht, da <code>gRPC<\/code> es die Verwendung eines eigenen (vorlagebasierten?) Thread-Modells erm\u00f6glicht, in dem sich die Ausf\u00fchrungsstapeln <code>gRPC<\/code> und die Benutzerimplementierung verflechten. Der Einfachheit halber halten wir an diesem Modell fest.<\/i><\/p><\/blockquote>\n<p><\/p>\n<h3>Profiling wird alles l\u00f6sen.<\/h3>\n<p>\nNachdem ich die Datenspeicher ausgeschlossen habe, dachte ich, ich w\u00e4re fast fertig: \u201eJetzt ist es einfach! Wir wenden das Profil an und erkennen, wo die Verz\u00f6gerung auftritt.\u201c Ich <noindex><a rel=\"nofollow\" href=\"https:\/\/mahdytech.com\/2019\/01\/13\/curious-case-999-latency-hike\/\">bin ein gro\u00dfer Fan von pr\u00e4zisem Profiling,<\/a><\/noindex>da die CPU sehr schnell ist und meist nicht der Engpass ist. Die meisten Verz\u00f6gerungen treten auf, wenn der Prozessor die Verarbeitung stoppen muss, um etwas anderes zu tun. Pr\u00e4zises CPU-Profiling ist genau daf\u00fcr ausgelegt: es zeichnet alles genau auf. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.tutorialspoint.com\/what-is-context-switching-in-operating-system\">Kontextwechsel<\/a><\/noindex> und zeigt, wo Verz\u00f6gerungen auftreten.<\/p>\n<p>Ich habe vier Profile analysiert: eines mit hohen QPS (geringe Latenz) und ein weiteres mit einem Ping-Pong-Server bei niedrigem QPS (hohe Latenz), sowohl auf der Client- als auch auf der Serverseite. Au\u00dferdem habe ich zur Sicherheit ein Beispiel f\u00fcr die CPU-Last aufgenommen. Beim Vergleich der Profile suche ich normalerweise nach anomalen Aufrufstapeln. Zum Beispiel treten auf der schlechten Seite mit hoher Latenz viel mehr Kontextwechsel auf (10-mal oder mehr). In meinem Fall war die Anzahl der Kontextwechsel jedoch nahezu identisch. Zu meinem Entsetzen gab es dort nichts Wesentliches.<\/p>\n<h1>Weitere Fehlersuche<\/h1>\n<p>\nIch war verzweifelt. Ich wusste nicht, welche anderen Werkzeuge ich verwenden k\u00f6nnte, und mein n\u00e4chster Plan bestand im Wesentlichen darin, Experimente mit verschiedenen Variationen durchzuf\u00fchren, ohne das Problem klar zu diagnostizieren.<\/p>\n<h3>Was w\u00e4re, wenn<\/h3>\n<p>\nVon Anfang an machte mir die spezifische Verz\u00f6gerungszeit von 50 ms Sorgen. Das ist eine sehr lange Zeit. Ich beschloss, Teile des Codes auszuschneiden, bis ich genau herausfinden konnte, welcher Teil den Fehler verursacht. Dann folgte ein Experiment, das funktionierte.<\/p>\n<p>Wie so oft erscheint im Nachhinein alles klar. Ich habe den Kunden auf eine Maschine mit Elvin gesetzt und eine Anfrage gesendet. <code>localhost<\/code>Und die erh\u00f6hte Latenz verschwunden!<\/p>\n<p><img decoding=\"async\" alt=\"Manchmal ist mehr weniger. Wenn eine Verringerung der Last zu einer erh\u00f6hten Latenz f\u00fchrt.\" src=\"\/wp-content\/uploads\/2019\/05\/2d8466625a264abe2110a65592ee0da8.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nIrgendwas stimmte mit dem Netzwerk nicht.<\/p>\n<h3>Das K\u00f6nnen eines Netzwerkingenieurs erlernen.<\/h3>\n<p>\nIch muss gestehen: Mein Wissen \u00fcber Netzwerktechnologien ist schrecklich, besonders wenn man bedenkt, dass ich t\u00e4glich damit arbeite. Aber das Netzwerk war der Hauptverd\u00e4chtige, und ich musste lernen, wie ich es debuggen kann.<\/p>\n<p>Gl\u00fccklicherweise liebt das Internet diejenigen, die lernen wollen. Die Kombination aus Ping und Tracert schien ein guter Anfang zur Fehlersuche bei Netzwerktransportproblemen zu sein.<\/p>\n<p>Zuerst habe ich <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.microsoft.com\/en-us\/sysinternals\/downloads\/psping\">PsPing<\/a><\/noindex> auf dem TCP-Port von Elvin gestartet. Ich habe die Standardeinstellungen verwendet \u2013 nichts Besonderes. Von \u00fcber tausend Pings \u00fcberschritt keiner 10 ms, au\u00dfer dem ersten zum Aufw\u00e4rmen. Das steht im Widerspruch zur beobachteten Latenzsteigerung von 50 ms im 99. Perzentil: Da h\u00e4tten wir bei 100 Anfragen etwa eine mit 50 ms Verz\u00f6gerung sehen m\u00fcssen.<\/p>\n<p>Dann habe ich <noindex><a rel=\"nofollow\" href=\"https:\/\/support.microsoft.com\/en-ca\/help\/314868\/how-to-use-tracert-to-troubleshoot-tcp-ip-problems-in-windows\">tracert<\/a><\/noindex>: vielleicht lag das Problem an einem der Knoten auf dem Weg zwischen Elvin und dem Kunden. Aber auch der Tracer kam mit leeren H\u00e4nden zur\u00fcck.<\/p>\n<p>Somit lag der Grund f\u00fcr die Verz\u00f6gerung nicht an meinem Code, nicht an der Implementierung von gRPC und nicht am Netzwerk. Ich begann bereits zu bef\u00fcrchten, dass ich das nie verstehen w\u00fcrde.<\/p>\n<h3>Welche Betriebssysteme verwenden wir jetzt?<\/h3>\n<p>\n<code>gRPC<\/code> ist weit verbreitet in Linux, jedoch ist es f\u00fcr Windows exotisch. Ich entschied mich, ein Experiment durchzuf\u00fchren, das funktionierte: Ich erstellte eine Linux-VM, kompilierte Alvin f\u00fcr Linux und setzte ihn ein.<\/p>\n<p><img decoding=\"async\" alt=\"Manchmal ist mehr weniger. Wenn eine Verringerung der Last zu einer erh\u00f6hten Latenz f\u00fchrt.\" src=\"\/wp-content\/uploads\/2019\/05\/ee74c16de7e1ac6c286e401660e94ca1.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nUnd das ergab sich: Im Ping-Pong-Server gab es unter Linux keine derartigen Verz\u00f6gerungen wie bei einem entsprechenden Knoten unter Windows, obwohl die Datenquelle identisch war. Das Problem liegt offenbar an der Implementierung von gRPC f\u00fcr Windows.<\/p>\n<h3>Nagle-Algorithmus<\/h3>\n<p>\nIch dachte die ganze Zeit, dass mir ein Flag fehlt. <code>gRPC<\/code>Jetzt habe ich verstanden, dass es in Wirklichkeit <code>gRPC<\/code> das Windows-Flag fehlt. Ich fand eine interne RPC-Bibliothek, von der ich \u00fcberzeugt war, dass sie gut f\u00fcr alle gesetzten Flags funktioniert. <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.microsoft.com\/en-us\/windows\/desktop\/winsock\/windows-sockets-start-page-2\">Winsock<\/a><\/noindex>. Dann f\u00fcgte ich all diese Flags in gRPC hinzu und setzte Alvin auf Windows im korrigierten Ping-Pong-Server unter Windows ein!<\/p>\n<p><img decoding=\"async\" alt=\"Manchmal ist mehr weniger. Wenn eine Verringerung der Last zu einer erh\u00f6hten Latenz f\u00fchrt.\" src=\"\/wp-content\/uploads\/2019\/05\/ce3a4066c78f9f6a63fd68578224d6e5.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<i>Fast<\/i> bereit: Ich begann, die hinzugef\u00fcgten Flags einzeln zu entfernen, bis die Regression zur\u00fcckkehrte, sodass ich die Ursache genau identifizieren konnte. Es war der ber\u00fcchtigte <noindex><a rel=\"nofollow\" href=\"https:\/\/docs.microsoft.com\/en-us\/windows\/desktop\/api\/winsock\/nf-winsock-setsockopt\">TCP_NODELAY<\/a><\/noindex>, Nagle-Algorithmus-Schalter.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Nagle%27s_algorithm\">Nagle-Algorithmus<\/a><\/noindex> versucht, die Anzahl der \u00fcber das Netzwerk gesendeten Pakete zu reduzieren, indem die \u00dcbertragung von Nachrichten verz\u00f6gert wird, bis die Paketgr\u00f6\u00dfe ein bestimmtes Byte-Limit \u00fcberschreitet. Obwohl dies f\u00fcr den durchschnittlichen Benutzer angenehm sein kann, ist es f\u00fcr Echtzeit-Server sch\u00e4dlich, da das Betriebssystem einige Nachrichten zur\u00fcckh\u00e4lt, was zu Verz\u00f6gerungen bei niedrigem QPS f\u00fchrt. Bei <code>gRPC<\/code> wurde dieses Flag in der Linux-Implementierung f\u00fcr TCP-Sockets gesetzt, jedoch nicht f\u00fcr Windows. Ich habe das <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/grpc\/grpc\/commit\/1dce1009e67ea4b5934a61b1bcf8a217bd12cc76\">behoben<\/a><\/noindex>.<\/p>\n<h1>Fazit<\/h1>\n<p>\nEine gro\u00dfe Verz\u00f6gerung bei niedrigem QPS wurde durch eine Betriebssystemoptimierung verursacht. R\u00fcckblickend hat das Profiling keine Verz\u00f6gerung festgestellt, da es im Kernel-Modus und nicht im <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.codinghorror.com\/understanding-user-and-kernel-mode\/\">Benutzermodus durchgef\u00fchrt wurde.<\/a><\/noindex>Ich wei\u00df nicht, ob man den Nagle-Algorithmus durch ETW-Aufzeichnungen beobachten kann, aber das w\u00e4re interessant.<\/p>\n<p>Was das Experiment localhost betrifft, so hat es wahrscheinlich keinen Einfluss auf den tats\u00e4chlichen Netzwerk-Code gehabt, und der Nagle-Algorithmus wurde nicht aktiviert, weshalb die Verz\u00f6gerungsprobleme verschwunden waren, als der Client \u00fcber localhost auf Elvin zugegriffen hat.<\/p>\n<p>Das n\u00e4chste Mal, wenn Sie eine Zunahme der Verz\u00f6gerung bei der Reduzierung der Anzahl der Anfragen pro Sekunde beobachten, sollte der Nagle-Algorithmus auf Ihrer Verd\u00e4chtigenliste stehen!<br \/>\n<br \/>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/451904\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u0430\u043a \u0438 \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u043f\u043e\u0441\u0442\u043e\u0432, \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0441 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0439 \u0441\u043b\u0443\u0436\u0431\u043e\u0439, \u043d\u0430\u0437\u043e\u0432\u0451\u043c \u044d\u0442\u0443 \u0441\u043b\u0443\u0436\u0431\u0443 \u042d\u043b\u0432\u0438\u043d. \u041d\u0430 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u044f \u043d\u0435 \u0441\u0430\u043c \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u043b \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u043c\u043d\u0435 \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0438 \u0440\u0435\u0431\u044f\u0442\u0430 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0439 \u0447\u0430\u0441\u0442\u0438. \u041e\u0434\u043d\u0430\u0436\u0434\u044b \u044f \u043f\u0440\u043e\u0441\u043d\u0443\u043b\u0441\u044f \u043e\u0442 \u043d\u0435\u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0438\u0441\u044c\u043c\u0430 \u0438\u0437-\u0437\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0437\u0430\u0434\u0435\u0440\u0436\u0435\u043a \u0443 \u042d\u043b\u0432\u0438\u043d\u0430, \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u044b \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432 \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0435 \u0432\u0440\u0435\u043c\u044f. \u0412 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u043a\u043b\u0438\u0435\u043d\u0442 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u043e\u0439 99-\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u0438\u043b\u044f \u0432 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":25389,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-33707","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u0430\u043a \u0438 \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u043f\u043e\u0441\u0442\u043e\u0432, \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0441 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0439 \u0441\u043b\u0443\u0436\u0431\u043e\u0439, \u043d\u0430\u0437\u043e\u0432\u0451\u043c \u044d\u0442\u0443 \u0441\u043b\u0443\u0436\u0431\u0443 \u042d\u043b\u0432\u0438\u043d. \u041d\u0430 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u044f \u043d\u0435 \u0441\u0430\u043c \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u043b \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u043c\u043d\u0435 \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0438 \u0440\u0435\u0431\u044f\u0442\u0430 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0439 \u0447\u0430\u0441\u0442\u0438. \u041e\u0434\u043d\u0430\u0436\u0434\u044b \u044f \u043f\u0440\u043e\u0441\u043d\u0443\u043b\u0441\u044f \u043e\u0442 \u043d\u0435\u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0438\u0441\u044c\u043c\u0430 \u0438\u0437-\u0437\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0437\u0430\u0434\u0435\u0440\u0436\u0435\u043a \u0443 \u042d\u043b\u0432\u0438\u043d\u0430, \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u044b \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432 \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0435 \u0432\u0440\u0435\u043c\u044f. \u0412 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u043a\u043b\u0438\u0435\u043d\u0442 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u043e\u0439 99-\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u0438\u043b\u044f \u0432\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/inogda-bolshe-eto-menshe-kogda-umenshenie-nagruzki-privodit-k-uvelicheniyu-zaderzhki\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0418\u043d\u043e\u0433\u0434\u0430 \u0431\u043e\u043b\u044c\u0448\u0435 \u2014 \u044d\u0442\u043e \u043c\u0435\u043d\u044c\u0448\u0435. \u041a\u043e\u0433\u0434\u0430 \u0443\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0438\u0435 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u044e \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u0430\u043a \u0438 \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u043f\u043e\u0441\u0442\u043e\u0432, \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0441 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0439 \u0441\u043b\u0443\u0436\u0431\u043e\u0439, \u043d\u0430\u0437\u043e\u0432\u0451\u043c \u044d\u0442\u0443 \u0441\u043b\u0443\u0436\u0431\u0443 \u042d\u043b\u0432\u0438\u043d. \u041d\u0430 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u044f \u043d\u0435 \u0441\u0430\u043c \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u043b \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u043c\u043d\u0435 \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0438 \u0440\u0435\u0431\u044f\u0442\u0430 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0439 \u0447\u0430\u0441\u0442\u0438. \u041e\u0434\u043d\u0430\u0436\u0434\u044b \u044f \u043f\u0440\u043e\u0441\u043d\u0443\u043b\u0441\u044f \u043e\u0442 \u043d\u0435\u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0438\u0441\u044c\u043c\u0430 \u0438\u0437-\u0437\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0437\u0430\u0434\u0435\u0440\u0436\u0435\u043a \u0443 \u042d\u043b\u0432\u0438\u043d\u0430, \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u044b \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432 \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0435 \u0432\u0440\u0435\u043c\u044f. \u0412 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u043a\u043b\u0438\u0435\u043d\u0442 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u043e\u0439 99-\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u0438\u043b\u044f \u0432\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/inogda-bolshe-eto-menshe-kogda-umenshenie-nagruzki-privodit-k-uvelicheniyu-zaderzhki\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:54:17+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:54:17+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Manchmal bedeutet mehr \u2013 weniger. Wenn eine Verringerung der Last zu einer h\u00f6heren Verz\u00f6gerung f\u00fchrt | ProHoster","description":"Wie in den meisten F\u00e4llen gab es ein Problem mit dem verteilten Dienst, den wir Elvin nennen wollen. Dieses Mal habe ich das Problem nicht selbst entdeckt, sondern die Jungs aus dem Support haben mir davon berichtet. Eines Morgens wurde ich von einer unzufriedenen E-Mail wegen der hohen Latenzen von Elvin geweckt, den wir bald starten wollten. Konkret hatte der Kunde mit einer Verz\u00f6gerung im 99. Perzentil zu k\u00e4mpfen.","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/inogda-bolshe-eto-menshe-kogda-umenshenie-nagruzki-privodit-k-uvelicheniyu-zaderzhki","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0418\u043d\u043e\u0433\u0434\u0430 \u0431\u043e\u043b\u044c\u0448\u0435 \u2014 \u044d\u0442\u043e \u043c\u0435\u043d\u044c\u0448\u0435. \u041a\u043e\u0433\u0434\u0430 \u0443\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0438\u0435 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u044e \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 | ProHoster","og:description":"\u041a\u0430\u043a \u0438 \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u043f\u043e\u0441\u0442\u043e\u0432, \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0441 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0439 \u0441\u043b\u0443\u0436\u0431\u043e\u0439, \u043d\u0430\u0437\u043e\u0432\u0451\u043c \u044d\u0442\u0443 \u0441\u043b\u0443\u0436\u0431\u0443 \u042d\u043b\u0432\u0438\u043d. \u041d\u0430 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u044f \u043d\u0435 \u0441\u0430\u043c \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u043b \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u043c\u043d\u0435 \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0438 \u0440\u0435\u0431\u044f\u0442\u0430 \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u0439 \u0447\u0430\u0441\u0442\u0438. \u041e\u0434\u043d\u0430\u0436\u0434\u044b \u044f \u043f\u0440\u043e\u0441\u043d\u0443\u043b\u0441\u044f \u043e\u0442 \u043d\u0435\u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0438\u0441\u044c\u043c\u0430 \u0438\u0437-\u0437\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0437\u0430\u0434\u0435\u0440\u0436\u0435\u043a \u0443 \u042d\u043b\u0432\u0438\u043d\u0430, \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u044b \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432 \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0435 \u0432\u0440\u0435\u043c\u044f. \u0412 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, \u043a\u043b\u0438\u0435\u043d\u0442 \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u043e\u0439 99-\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u0438\u043b\u044f \u0432","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/inogda-bolshe-eto-menshe-kogda-umenshenie-nagruzki-privodit-k-uvelicheniyu-zaderzhki","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:54:17+00:00","article:modified_time":"2019-10-31T18:54:17+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"33707","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 16:23:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:35:31","updated":"2026-01-21 16:23:19"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/33707","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=33707"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/33707\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/25389"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=33707"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=33707"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=33707"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}