Differenziertes Urteil

Java-Clients

Clientseitig wählten wir Java aus, weil sich diese Sprache aus mehreren Gründen gut für die Benchmarks eignet. Zum einen müssen die Clients natürlich die Netzwerkprotokolle "sprechen" können, die es zu überprüfen gilt. Hier haben die Java-Väter ihrem Sprößling genug Funktionen mitgegeben. Der fehlende direkte Zugang zu den untersten Netzwerkschichten stört nicht, da dieser Bereich von zusätzlichem Code auf dem Linux-Kontrollserver abgedeckt ist. Zudem könnte man unter Linux und, mit Einschränkungen, auch unter Windows, per "Java Native Interface" (JNI) auch den direkten Zugang zu einer Netzwerkkarte erhalten.

Der zweite ausschlaggebende Vorteil von Java liegt in der Einfachheit, mit der sich leichtgewichtige Prozesse (Threads) aufbauen lassen. Diese sind ideal dazu geeignet, gleich eine ganze Heerschar parallel "zuschlagender" simulierter Clients zu erzeugen. Damit hebelt man auch den prinzipiellen Nachteil aller Java-I/O-Operationen aus, die ausnahmslos blocken, wenn diese auf externe Daten warten müssen.