Skip to content
/ yeet Public

high performance in-memory indexed static file webserver

License

Notifications You must be signed in to change notification settings

Vilsol/yeet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Yeet build GitHub go.mod Go version GitHub tag (latest by date)

CLI Usage: Docs

Features

  • Fast
  • 0 setup
  • Local fs support
  • S3 support
  • Redis-backed S3 support
  • Cuckoo filter for Redis-S3
  • File watching (local only)

Docker

docker run -v /path/to/data:/www -p 8080:8080 ghcr.io/vilsol/yeet:latest

Benchmarks (GOMAXPROCS=1)

Baseline

BenchmarkServerGet1ReqPerConn                            8512062              1379 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet2ReqPerConn                           11406890              1057 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet10ReqPerConn                          15189015               775 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet10KReqPerConn                         17068996               698 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet1ReqPerConn10KClients                  8310056              1409 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet2ReqPerConn10KClients                 10608926              1058 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet10ReqPerConn10KClients                15363962               773 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet100ReqPerConn10KClients               16854955               707 ns/op               0 B/op          0 allocs/op

With cache expiry

BenchmarkServerGet1ReqPerConnExpiry                      8677137              1375 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet2ReqPerConnExpiry                     11386528              1053 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet10ReqPerConnExpiry                    15480867               773 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet10KReqPerConnExpiry                   16949194               707 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet1ReqPerConn10KClientsExpiry            8515335              1388 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet2ReqPerConn10KClientsExpiry           11266317              1060 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet10ReqPerConn10KClientsExpiry          15184057               776 ns/op               0 B/op          0 allocs/op
BenchmarkServerGet100ReqPerConn10KClientsExpiry         16339011               714 ns/op               0 B/op          0 allocs/op