Go to file
George Shammas c6824ae921 #24 Fix parsing of windows command line user agents 2022-06-15 16:34:33 +00:00
.github/workflows Depricate old go versions 2022-06-15 15:53:34 +00:00
templates Update copyright 2022-06-15 15:47:15 +00:00
.dockerignore Add Dockerfile and docker-compose.yml 2020-10-05 09:55:52 -04:00
.gitignore Progress 2018-12-27 22:12:12 +00:00
.version Add nix flake files 2020-11-15 21:19:12 -05:00
Dockerfile Switch to using jsoniter 2022-01-05 12:23:33 -05:00
LICENSE Adding dummy readme and license file 2014-07-09 11:17:34 -04:00
README.md Fix readme typo: adverage -> average 2020-09-05 12:30:36 -04:00
default.nix Add nix flake files 2020-11-15 21:19:12 -05:00
docker-compose.yml Add Dockerfile and docker-compose.yml 2020-10-05 09:55:52 -04:00
flake.lock update nix config 2022-01-04 17:42:51 -05:00
flake.nix Update nix vendor sha 2022-06-15 15:55:08 +00:00
go.mod Update dependencies 2022-06-15 15:47:04 +00:00
go.sum Update dependencies 2022-06-15 15:47:04 +00:00
main.go #24 Fix parsing of windows command line user agents 2022-06-15 16:34:33 +00:00
shell.nix Add nix flake files 2020-11-15 21:19:12 -05:00
web-service.systemd Added Javascript endpoints and systemd service example 2022-01-04 17:06:08 -05:00

README.md

ifconfig.io

Build Status

Inspired by ifconfig.me, but designed for pure speed. A single server can do 18,000 requests per seconds while only consuming 50megs of ram.

I used the gin framework as it does several things to ensure that there are no memory allocations on each request, keeping the GC happy and preventing unnessary allocations.

Tested to handle 15,000 requests persecond on modest hardware with an average response time of 130ms. LoadTest