🚧 FastWSGI is still under development.
FastWSGI is an ultra fast WSGI server for Python 3.
Its written in C and uses libuv and llhttp under the hood for blazing fast performance.
Platform | Linux | MacOs | Windows |
---|---|---|---|
Support | ✅ | ✅ | ✅ |
FastWSGI is one of the fastest general use WSGI servers out there!
For a comparison against other popular WSGI servers, see PERFORMANCE.md
Install using the pip package manager.
pip install fastwsgi
Create a new file example.py
with the following:
import fastwsgi
def app(environ, start_response):
headers = [('Content-Type', 'text/plain')]
start_response('200 OK', headers)
return [b'Hello, World!']
if __name__ == '__main__':
fastwsgi.run(wsgi_app=app, host='0.0.0.0', port=5000)
Run the server using:
python3 example.py
Or, by using the fastwsgi
command:
fastwsgi example:app
See example.py for more details.
import fastwsgi
from flask import Flask
app = Flask(__name__)
@app.get('/')
def hello_world():
return 'Hello, World!', 200
if __name__ == '__main__':
fastwsgi.run(wsgi_app=app, host='127.0.0.1', port=5000)
To run the test suite using pytest, run the following command:
python3 -m pytest
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests where appropriate.
- Comprehensive error handling
- Complete HTTP/1.1 compliance
- Unit tests running in CI workflow