• Stars
    star
    301
  • Rank 137,640 (Top 3 %)
  • Language
    Shell
  • License
    Apache License 2.0
  • Created over 6 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Simple benchmark comparing zuul and spring cloud gateway

Spring Cloud Gateway Benchmark

TL;DR

Proxy Avg Latency Avg Req/Sec/Thread
gateway 6.61ms 3.24k
linkered 7.62ms 2.82k
zuul 12.56ms 2.09k
none 2.09ms 11.77k

Terminal 1 (simple webserver)

cd static
./webserver # or ./webserver.darwin-amd64 on a mac

Terminal 2 (zuul)

cd zuul
./mvnw clean package
java -jar target/zuul-0.0.1-SNAPSHOT.jar 

Terminal 3 (gateway)

cd gateway
./mvnw clean package
java -jar target/gateway-0.0.1-SNAPSHOT.jar 

Terminal 4 (linkerd)

cd linkerd
java -jar linkerd-1.3.4.jar linkerd.yaml

Terminal N (wrk)

install wrk

Ubuntu: sudo apt install wrk

Mac: brew install wrk

NOTE: run each one multiple times to warm up jvm

Gateway bench (8082)

$ wrk -t 10 -c 200 -d 30s http://localhost:8082/hello.txt
Running 30s test @ http://localhost:8082/hello.txt
  10 threads and 200 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     6.61ms    4.71ms  49.59ms   69.36%
    Req/Sec     3.24k   278.42     9.02k    75.89%
  969489 requests in 30.10s, 175.67MB read
Requests/sec:  32213.38
Transfer/sec:      5.84MB

zuul bench (8081)

~% wrk -t 10 -c 200 -d 30s http://localhost:8081/hello.txt
Running 30s test @ http://localhost:8081/hello.txt
  10 threads and 200 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    12.56ms   13.35ms 195.11ms   86.33%
    Req/Sec     2.09k   215.10     4.28k    71.81%
  625781 requests in 30.09s, 123.05MB read
Requests/sec:  20800.13
Transfer/sec:      4.09MB

linkerd bench (4140)

~% wrk -H "Host: web" -t 10 -c 200 -d 30s http://localhost:4140/hello.txt
Running 30s test @ http://localhost:4140/hello.txt
  10 threads and 200 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     7.62ms    5.45ms  53.51ms   69.82%
    Req/Sec     2.82k   184.58     4.11k    72.17%
  843418 requests in 30.07s, 186.61MB read
Requests/sec:  28050.76
Transfer/sec:      6.21MB

no proxy bench (8000)

~% wrk -t 10 -c 200 -d 30s http://localhost:8000/hello.txt
Running 30s test @ http://localhost:8000/hello.txt
  10 threads and 200 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     2.09ms    2.07ms  28.37ms   85.89%
    Req/Sec    11.77k     2.07k   45.46k    70.97%
  3516807 requests in 30.10s, 637.24MB read
Requests/sec: 116841.15
Transfer/sec:     21.17MB

More Repositories

1

battleschool

Development environment provisioning using ansible, ala boxen -> puppet, kitchenplan -> chef
Python
417
star
2

ansible-osx

A battleschool ansible repository for osx
Python
78
star
3

rsocket-broker-sample

Java
68
star
4

halfpipe

HTTP+JSON Services using industry best Java libraries. Bases on Spring Boot, with Netflix OSS integration. Originally inspired by dropwizard.
JavaScript
67
star
5

monolith-to-microservices

Java
48
star
6

myfeed

Myfeed is a sample cloud natvie application build using spring-cloud
Java
39
star
7

spring-cloud-sandbox

Java
21
star
8

spring-cloud-gateway-mvc-sample

Spring Cloud Gateway MVC Sample
Java
15
star
9

oscon2015

Source code created during my Microservices with Spring Cloud and Netflix OSS
Java
14
star
10

spring-cloud-kubernetes

CSS
7
star
11

spring-cloud-bus-rsocket-sample

Sample app that uses spring-cloud-bus with RSocket Routing as the transport
Java
7
star
12

spring-cloud-star

CSS
7
star
13

spring-cloud-netflix-eureka-lite

A proxy for Netflix Eureka that allows clients written in other languages to use Eureka with a simple HTTP API.
Java
5
star
14

spring-cloud-eureka-zone-affinity-sample

Example that configures spring cloud eureka for multi-zone affinity.
Shell
5
star
15

toml-property-source-loader

A TOML Property Source Loader for Spring Boot
Java
4
star
16

communityanswers

Code for answers for sites like stackoverflow or github issues
Java
3
star
17

spring-rest-client

Java
3
star
18

spring-cloud-gateway-recipies

Java
3
star
19

ribbondemo

Java
2
star
20

beginners-guide-to-spring-cloud

Shell
1
star
21

go-nuvem

Go
1
star
22

consul-turbine-example

Shell
1
star
23

spring-upgrade-demo

Demo project to show upgrading from Spring Boot 2.x to Spring Boot 3.0
Java
1
star
24

microservices

Spring Cloud Microservices
Java
1
star
25

springbootkotlin

Shell
1
star
26

libremed

1
star
27

config-server-static-files

Spring Cloud Config Server also serving static files
Shell
1
star
28

path-matching-regression

Java
1
star