bjoern: Fast And Ultra-Lightweight HTTP/1.1 WSGI Server
A screamingly fast, ultra-lightweight WSGI server for CPython, written in C using Marc Lehmann’s high performance libev event loop and Ryan Dahl’s http-parser.
Why It’s Cool
bjoern is the fastest, smallest and most lightweight WSGI server out there, featuring
~ 1000 lines of C code
Memory footprint ~ 600KB
Single-threaded and without coroutines or other crap
Can bind to TCP host:port addresses and Unix sockets (thanks @k3d3!)
Full persistent connection (”keep-alive”) support in both HTTP/1.0 and 1.1, including support for HTTP/1.1 chunked responses
Installation
pip install bjoern. See wiki for details.
Usage
# Bind to TCP host/port pair: bjoern.run(wsgi_application, host, port) # TCP host/port pair, enabling SO_REUSEPORT if available. bjoern.run(wsgi_application, host, port, reuse_port=True) # Bind to Unix socket: bjoern.run(wsgi_application, 'unix:/path/to/socket') # Bind to abstract Unix socket: (Linux only) bjoern.run(wsgi_application, 'unix:@socket_name')
Alternatively, the mainloop can be run separately:
bjoern.listen(wsgi_application, host, port) bjoern.run()
You can also simply pass a Python socket(-like) object. Note that you are responsible for initializing and cleaning up the socket in that case.
bjoern.server_run(socket_object, wsgi_application) bjoern.server_run(filedescriptor_as_integer, wsgi_application)
Release files for bjoern 1.4.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| bjoern-1.4.3.tar.gz | 28.8 kB | Details |
Release files / bjoern-1.4.3.tar.gz
| Download URL | bjoern-1.4.3.tar.gz |
|---|---|
| Size | 28.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9361dc1e8ef22eb749fcf3d16b9023bb1d1c59916b4e32400902648b4805fffd
|
|
BLAKE2b-256 checksum How to use checksums |
4dc0ab45464d3162fdf13e26c322ba300f98a218043833974e403b04ce4eefa1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |