Giter Club home page Giter Club logo

hlcup2017's Introduction

Highload cup

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).

Phase one

Contains only GET queries based on known preloaded data. Linear growth testing profile with 1-200 RPS.

Time to complete request:

  • Min = 0.327 msec
  • Max = 64.151 msec
  • Avg = 3.658 msec
  • Median = 1.291 msec

Phase two

Contains only POST queries, updating existing data. Constant testing profile with 100 RPS.

Time to complete request:

  • Min = 0.656 msec
  • Max = 48.92 msec
  • Avg = 3.928 msec
  • Median = 1.427 msec

Phase three

Contains only GET queries, verifying updated data. Linear growth testing profile with 200-2000 RPS.

Time to complete request:

  • Min = 0.257 msec
  • Max = 486.988 msec
  • Avg = 62.749 msec
  • Median = 6.427 msec

hlcup2017's People

Contributors

ascvorcov avatar

Stargazers

 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.