Einzelnen Beitrag anzeigen

Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#3

AW: Nachrichten für mehr als 10.000 Rechner im Netzwerk - Welche Technik verwenden?

  Alt 7. Mär 2016, 10:13
Klar ist schonmal, dass jede Minute die Datnebank zu pollen, definitiv nicht die beste Möglichkeit ist.

Technisch am besten dafür geeignet wäre im Prinzip eine Multicast Nachricht. Jeder der teilnehmenden Rechner schreibt sich in die entsprechende Multicast Gruppe ein und der Server sendet eine Multicast Nachricht an diese Gruppe, sobald ein bestimmtes Event eingetreten ist. Die richtige Hardware vorausgesetzt bekommt so jeder der 10.000 PCs gleichzeitig seine Nachricht und die benötigte Bandbreite könnte geringer gar nicht sein.

Leider ist das nicht immer eine mögliche Option. Billige Switches spielen da nicht mit, der Konfigurationsaufwand ist nicht zu unterschätzen und über das Internet funktioniert diese Technik nicht. :-/

Auf jeden Fall würde ich zur Lastreduzierung vom Polling wegkommen und stattdessen ein zentrales Prinzip einführen. Die erwähnten WebSockets sind in der Tat eine Option, allerdings solltest du die Technologie verwenden, mit der du am besten vertraut bist. Wenn deine Anwendung mit Web nichts zutun hat und du auch mit node.js und Konsorten nicht vertraut bist, sehe ich wenig Sinn dahinter, den gesamte Overhead dieser Technologie mitzunehmen.

Stattdessen würde ich dann eher herkömmlichen TCP-Verbindung zurückgreifen. Du musst bei der Implementierung darauf achten, dass 10.000 Verbindungen ziemlich viele sind. Das bedeutet für dich, dass du bei der Implementierung schauen müsstest, dass du nicht 10k Threads oder gar 10k Prozesse startest. Stattdessen würde wenige Threads zur Abarbeitung aller Verbindungen ja genügen.
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog
  Mit Zitat antworten Zitat