Skip to content

Apache-benchmark testing of Node.js's express framework vs Python's Flask vs Golang's net/http standard package.

Notifications You must be signed in to change notification settings

yudi-tan/concurrency-benchmark

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

Comparison of different language/frameworks' performance on I/O heavy tasks vs CPU-intensive tasks.

I/O Heavy Tasks (simulated by sleeping for 5 secs between requests)

Apache Bench Result with 100 calls and 100 concurrent requests.

Ranked in order (fastest to slowest):

Golang Benchmark

alt text

Node.js Benchmark

alt text

Flask Benchmark

alt text

CPU-Intensive Tasks (simulated by running deeply-recursive fibonacci generator for the 45th fibonacci number)

Apache Bench Result with 5 calls and 5 concurrent requests.

Ranked in order (fastest to slowest):

Golang with Redis Cache Benchmark (Note, this is running 1000 requests and that it is calculating Fibonacci 90 instead of 45!)

alt text

Pure Golang Benchmark

alt text

Node.js with PM2 (multi-core/cluster mode) on 4 cores

alt text

alt text

Node.js without PM2 (single-threaded)

alt text

Python Flask using pypy just-in-time compiler instead of cpython (using cpython, which is the default, would be too slow to even test) and running only 2 requests (any amount of requests above 3 time-outs the AB test)

alt text

About

Apache-benchmark testing of Node.js's express framework vs Python's Flask vs Golang's net/http standard package.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published