Natürlich sind die Indys eine deutlich bessere Wahl als die obigen Socket-Komponenten, doch nach Lesen
dieses Blogs kommen mir hinsichtlich der Qualität auch da meine Zweifel.
Die Performance der
Indy HTTP Server Komponente ist nach meinen Tests eigentlich nicht schlecht.
Ich habe heute einen Test mit dem
Indy HTTP Server auf sehr viel langsamer Hardware gemacht (Mobile Core 2 Duo statt Core i5 mit 4 CPUs), und erhielt 320 Requests pro Sekunde als kontinuierlichen Durchsatz. Dabei habe ich sowohl den Client (das Apache JMeter Testskript, das die Last erzeugte) als auch den
Indy HTTP Server auf der gleichen Maschine ausgeführt.
DataSnap über
Indy schaffte im Test von Roberto Schneiders nur 62 Requests/Sekunde. Aber es wird laut Kommentaren im Blog schon untersucht, woher diese niedrigen Durchsatzwerte bei DataSnap kommen.
p.s. Ich fände einen Performancetest anderer Web Service Frameworks (RO und RTC) auch recht interessant.
p.p.s.:
Screenshot: mit 50 Threads (ebenfalls JMeter Clients und Server auf der gleichen Hardware laufend) schafft
Indy HTTP Server ca. 1400 Requests pro Sekunde, mit 50% CPU Last und 3 MB
RAM auf meinem relativ langsamen System.