- Notifications
You must be signed in to change notification settings - Fork0
High performance and extensible micro web framework. Zero memory allocations in hot paths.
License
LoginRadius/atreugo
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
High performance and extensible micro web framework with zero memory allocations in hot paths.
It's built on top offasthttp.
go get github.com/savsgio/atreugo/v11
- 1.22.x
- 1.21.x
- 1.20.x
See:docs
Find useful libraries like middlewares, websocket, etc.
- See:Organization
Optimized for speed. Easily handles more than 100K qps and more than 1M concurrent keep-alive connections on modern hardware.
Optimized for low memory usage.
Easy 'Connection: Upgrade' support via RequestCtx.Hijack.
Server provides anti-DoS limits.
Middlewares support:
- Before view execution.
- After view execution.
Easy routing:
- Path parameters (mandatories and optionals).
- Views with timeout.
- Group paths and middlewares.
- Static files.
- Serve one file like pdf, etc.
- Middlewares for specific views.
- fasthttp handlers support.
- net/http handlers support.
Common responses (also you could use your own responses):
- JSON
- HTTP
- Text
- Raw
- File
- Redirect
Go toexamples to see how to use Atreugo.
*atreugo.RequestCtx
is equal to*fasthttp.RequestCtx
, but with extra functionalities, so you can usethe same functions of*fasthttp.RequestCtx
. Don't worry 😄
Best Performance: Atreugo isone of the fastest go web frameworks in thego-web-framework-benchmark.
- Basic Test: The first test case is to mock 0 ms, 10 ms, 100 ms, 500 ms processing time in handlers.
- Concurrency Test (allocations): In 30 ms processing time, the test result for 100, 1000, 5000 clients is:
*Smaller is better
Feel free to contribute or fork me... 😉
About
High performance and extensible micro web framework. Zero memory allocations in hot paths.
Resources
License
Stars
Watchers
Forks
Packages0
Languages
- Go100.0%