Hallo Leute,
ich habe gerade folgendes Problem: Ich möchte Daten über TCP von einem Server zu einem Client übertragen. Aber ich frage mich nun, wie ich das am einfachsten und effizientesten anstelle. Die Anwendung wird verschiedene Daten liefern, z.B. nur einfache Events (z.B. Berechnung abgeschlossen) oder z.B die Daten eines Punktes, einer Linie, eines Rechtecks.
Ich sehe nun zwei Möglichkeiten dafür:
a) Es wird einfach nur ein String übertragen, der alle Daten hintereinander enthällt, die z.B. mit $ getrennt sind. Bsp.:
object$point;1;2$line;2;3;4;5
Der String wird dann anhand von $ gesplittet und mit dem ersten Part des Arrays wird ein switch/case Vergleich durchgeführt. Und der andere Rest wird an der entsprechenden Stelle weiterverarbeitet
b) Es wird ein String im XML Format übertragen
<xml>
<action>object</action>
<object name="line" coords="1,2,3,4" />
...
</xml>
Und am Ende wird das ganze mit einem Parser eingelesen
Für welche Variante würdet ihr euch entscheiden? Der "Flaschenhals" der Verbindung wird ein 100MBit Netzwerk sein, idR. läuft aber alles über 10GBit. Es kann aber eine nahezu unbegrenzte Anzahl an Objekten existieren.
ich habe gerade folgendes Problem: Ich möchte Daten über TCP von einem Server zu einem Client übertragen. Aber ich frage mich nun, wie ich das am einfachsten und effizientesten anstelle. Die Anwendung wird verschiedene Daten liefern, z.B. nur einfache Events (z.B. Berechnung abgeschlossen) oder z.B die Daten eines Punktes, einer Linie, eines Rechtecks.
Ich sehe nun zwei Möglichkeiten dafür:
a) Es wird einfach nur ein String übertragen, der alle Daten hintereinander enthällt, die z.B. mit $ getrennt sind. Bsp.:
object$point;1;2$line;2;3;4;5
Der String wird dann anhand von $ gesplittet und mit dem ersten Part des Arrays wird ein switch/case Vergleich durchgeführt. Und der andere Rest wird an der entsprechenden Stelle weiterverarbeitet
b) Es wird ein String im XML Format übertragen
<xml>
<action>object</action>
<object name="line" coords="1,2,3,4" />
...
</xml>
Und am Ende wird das ganze mit einem Parser eingelesen
Für welche Variante würdet ihr euch entscheiden? Der "Flaschenhals" der Verbindung wird ein 100MBit Netzwerk sein, idR. läuft aber alles über 10GBit. Es kann aber eine nahezu unbegrenzte Anzahl an Objekten existieren.