Wie viele Anfragen kann mit einem port an 'a' Zeit
Ich bin erstellen einer web-Anwendung mit einer login-Seite , wo die Anzahl der Benutzer kann versucht login zur gleichen Zeit. also hier muss ich handle Anzahl von Anforderungen gleichzeitig.
Ich weiß, das ist bereits umgesetzt, für die Reihe von beliebten Websites wie G talk
.
So, ich habe einige Fragen in meinem Kopf.
"Wie viele Anforderungen kann ein port in einer Zeit verarbeiten ?"
Wie viele Steckdosen kann ich(server) erstellen ? gibt es irgendwelche Einschränkungen?
E.g . Wie wir wissen, wenn wir realisieren client-server-Kommunikation über Socket-Programmierung(TCP), die wir pass 'port-Nummer(nicht reservierte port-Zahl), der server für das erstellen einer socket .
Also ich meine, zu sagen, wenn 100000 Zugriffe auf ein einziges mal, was dann wird sein Ansatz von port, um alle diese Anforderungen.
Ist er manitains einige Warteschlange für alle diese Anforderungen , oder er akzeptiert die Anzahl der Anfragen pro seine Grenze? wenn ja, was ist der Umgang mit Wunsch begrenzen-Größe des Hafens ?
Zusammenfassung:
Ich möchte wissen, wie die server dient, mehrere Anfragen gleichzeitig?Ich weiß nicht, irgendeine Sache über es. Ich weiss, dass wir Verbindung zu einem server über seine ip-Adresse und port-Nummer, die ist es.
Also dachte ich, es ist nur ein port und viele Anfrage kommen, dass der port nur über verschiedene clients so wie man server verwaltet alle Anfragen?
Dies ist alles, was ich wissen will. Wenn Sie erklären, dieses Konzept im detail wäre es sehr hilfreich. Dank keiner Weise.
- Das hängt von der Anzahl der threads, die Sie haben dienen, den Anfragen?
- pls überprüfen Sie diesen link Ihre bereits hier beantwortet stackoverflow.com/questions/1575453/...
- Sorry, aber ,hier meine Frage bleibt weiterhin, nach all diesen bemerkenswerten Antworten, dass Sie, Wie viele Anforderungen kann ein port in einer Zeit verarbeiten?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einen port nicht Anfragen, empfängt er Pakete. Abhängig von der Implementierung der server diese Pakete können behandelt werden, indem ein oder mehr Prozesse /threads, so dass diese unbegrenzt ist, theoretisch. Aber du wirst immer begrenzt durch Bandbreite und Rechenleistung.
Wenn viele Pakete ankommen, an einem Anschluss und kann nicht behandelt werden, in einer fristgerechten Weise, Sie werden gepuffert werden (vom server, das Betriebssystem oder die hardware). Wenn diese Puffer sind voll, die Staus vielleicht bearbeitet von Netzwerk-Komponenten (Router, switches) und die Protokolle der Netzwerk-Verkehr basiert. TCP hat zum Beispiel einige Methoden zu vermeiden oder zu Steuern, Staus: http://en.wikipedia.org/wiki/Transmission_Control_Protocol#Congestion_control
Dies ist in der Regel konfiguriert, die in der Anwendungs - /web-server, den Sie verwenden. Wie begrenzen Sie die Anzahl gleichzeitiger Anforderungen ist durch die Begrenzung der Anzahl von parallel worker-threads erlauben Sie den server, um zu laichen, um Anfragen zu bedienen. Wenn mehr Anfragen kommen, als Sie es sind Fäden, um Sie zu behandeln, werden Sie in eine Warteschlange. Dies ist die zweite Sache, die Sie in der Regel konfigurieren, die socket-zurück-log-Größe. Wenn die Protokolldatei voll ist, wird der server-start reagiert mit "connection refused", wenn neue Anfragen kommen.
Dann wirst du wohl eingeschränkt werden, indem die Anzahl der Dateideskriptoren, die Ihr Betriebssystem das unterstützt (im Falle von *nix), oder die Anzahl der gleichzeitigen verbindungen, die der webserver unterstützt. Die OS maximal auf meinem Rechner zu sein scheint 75000.
Als 100.000 gleichzeitige verbindungen sollte problemlos möglich sein in Java, wenn Sie so etwas wie Netty.
Müssen Sie in der Lage sein:
Sehen diese Artikel aus 2009, wo Sie diskutieren die Erreichung von 100.000 gleichzeitige verbindungen mit über 20% CPU-Auslastung auf einem quad-core-server.