Roberto Schneiders published and discussed test results for a REST application implemented with the frameworks DataSnap, mORMot, Jersey/Grizzly, ASP.NET WCF and Node.js: DataSnap analysis based on Speed & Stability tests. All the source code of the servers, as well as the binaries and the JMeter test plans are available for download at https://github.com/RobertoSchneiders/DataSnap_REST_Test.
Update: Indy HTTP server tests with pretty good results
To see wether Indy or DataSnap is the bottleneck, I ran a single-threaded JMeter test of the Indy HTTP server on a quite slow system (Mobile Core2 Duo @ 2.1 GHz), with HTTP 1.1 keep-alive enabled. The average throughput was 320 requests/second, with zero (0) % HTTP errors. The CPU load was around 40%, Client and server where running on the same system. In the tests described above, DataSnap with Indy as HTTP transport reached 62 requests/second on a Core i5 750 with 4 x 2,67 GHz system. With 50 threads, throughput reached more than 1.400 requests/second (over 1 million requests), 50% CPU load and 3 MB RAM usage.
The server application was the BasicDemo (a simple ‘Hello world!’) web application implemented with the Habari Web Components, which are a layer on top of Indy HTTP server components.