Implementation of json REST API for mail.ru highload cup. The goal was to compare vanilla aspnet/kestrel Web Api implementation with other low-level solutions (with custom routing, json serialization and parsing). All testing performed in virtualized environment with following parameters: Intel Xeon (4 cores 2 GHz), 4GB RAM, 10GB HDD.
The result was 182nd place, with score of 63485 seconds (the lower the better - total number of seconds spent to process queries), 1st place solution using C with sockets, 121 second. Apparently, slowest parts are built-in routing and json serialization. Replacing with custom implementation gives boost up to 1296 seconds (145th place, Alex K), or even 264 seconds (83rd place, seralexeev).
Contains only GET queries based on known preloaded data. Linear growth testing profile with 1-200 RPS.
Time to complete request:
Contains only POST queries, updating existing data. Constant testing profile with 100 RPS.
Time to complete request:
Contains only GET queries, verifying updated data. Linear growth testing profile with 200-2000 RPS.
Time to complete request: