Entschuldigung für die sehr unzeitige Antwort, aber ich stolperte über diese Frage, als ich nach Metriken für die Netzwerklatenzen suchte, die andere zwischen ihrem Anwendungsserver und dem Datenbankserver erreichten. Wie auch immer, ich habe festgestellt, dass die anderen Antworten
Kurz gesagt: Ja, die Netzwerklatenz (gemessen durch Ping) kann einen großen Unterschied ausmachen.
Wenn die Antwortzeit Ihrer Datenbank 0,001 ms beträgt, dann werden Sie eine enorme Auswirkung sehen, wenn Sie von einem 0,2 ms- auf einen 8 ms-Ping wechseln. Ich habe gehört, dass Datenbankprotokolle gesprächig sind, was, wenn es wahr ist, bedeutet, dass sie mehr durch langsame Netzwerklatenz im Vergleich zu http beeinträchtigt werden würden.
Und mehr als wahrscheinlich, wenn Sie 1 Abfrage ausführen, dann 8ms hinzufügen, um die Antwort von der Datenbank zu erhalten wird keine Rolle. Wenn Sie jedoch 10.000 Abfragen ausführen, was in der Regel bei schlechtem Code oder nicht optimierter Verwendung eines ORM der Fall ist, müssen Sie 80 Sekunden länger auf einen Ping von 8 ms warten, während Sie bei einem Ping von 0,2 ms nur 4 Sekunden warten würden.
Ich selbst lasse niemals zu, dass Kundenanwendungen direkt mit der Datenbank in Kontakt treten. Ich verlange, dass Client-Anwendungen immer über einen Anwendungsserver (z. B. einen REST-Webdienst) laufen. Wenn ich auf diese Weise versehentlich ein "1+N"-ORM-Problem habe, hat das nicht annähernd so große Auswirkungen. Ich würde trotzdem versuchen, das zugrunde liegende Problem zu beheben...