Skip to content

simple platform for http1.1 vs http2 vs quic speed comparison and demonstration

License

Notifications You must be signed in to change notification settings

jimni/http-comparator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HTTP1/HTTP2/QUIC DEMO SERVER

This is a very simple GOLANG web server that hosts the same content via 4 protocols:

  • http1.1 (port 8080)
  • http1.1 + tls (port 8081)
  • http2 (port 8082)
  • QUIC (port 8083)

It can be used to show large-scale differences in protocol performance (e. g. quic is a lot faster when >1% packets are lost).

It is not at all suitable for benchmarking because atm no open-source quic implementation is optimised for performance (neither client nor server).

To run this server you will have to put relevant certificates in a folder specified in getSslFiles() (todo: accept cert paths as args) and install all dependencies for this app (go get ./...).

Two html pages were made to showcase protocol differences from *.nikitin.su. In order to reuse these demo pages feel free to find-and-replace nikitin.su and go from there:

  • /benchmark — runs a few demo cases for each protocol
  • /ui — runs some pseudo-cache demo of http prefetching capabilities

If you have any questions at all — please open an issue.

QUIC CLIENT

A convenient way of accessing QUIC pages from a Mac is running Chrome (tested on v.58) with a few command line parameters:

/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --user-data-dir=/tmp/chrome --enable-quic --origin-to-force-quic-on=your.quic.domain:8083

About

simple platform for http1.1 vs http2 vs quic speed comparison and demonstration

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages