Comments (4)
Thanks @OleMussmann for your patience!
And thanks for the thorough explanation and debugging example.
It seems this was fixed in Dash v1. I sent you a PR to your debugging repo with the changes.
from meinheld-gunicorn-flask-docker.
Thank you @tiangolo for following it up. It's been a while since I have looked at this, but I need to do some work on this project soon, so this is great timing.
I think we can close this now.
from meinheld-gunicorn-flask-docker.
The default worker type is the one included in Gunicorn. Here it's set to egg:meinheld#gunicorn_worker
to use https://github.com/mopemope/meinheld, which is the fastest (more performance) option for WSGI applications like Flask, Django, etc. By not using Meinheld but the default included in Gunicorn, that performance is lost. And then you would probably be better with https://github.com/tiangolo/uwsgi-nginx-flask-docker directly.
Note: For more performance than Meinheld, it would be a framework based on ASGI, like https://github.com/tiangolo/fastapi, running with Uvicorn.
Do you have a repo/files with a sample mini-project that I can take a look at? That way I can see and debug what's happening in your use case.
from meinheld-gunicorn-flask-docker.
Thanks @tiangolo for looking into this.
There's a minimal working example at https://github.com/OleMussmann/meinheld-gunicorn-flask-docker_test
Maybe I'm doing something wrong in the main.py
? What are good ways to debug?
Edit:
The combination of the static_folder='assets'
option in the line
app = flask.Flask(__name__, static_folder='assets')
and the setting
dash_app.scripts.config.serve_locally = True
seem to be responsible for stalling the meinheld runner. Removing either of these - or both - will prevent the stalling.
The default runner does not choke on these options.
from meinheld-gunicorn-flask-docker.
Related Issues (20)
- gunicorn kills processes in an endless loop HOT 1
- Error : could not import "app.app"
- Running application on subpath
- Enable SSH HOT 3
- Long Loading Time for Application HOT 6
- Compression HOT 2
- Statsd export HOT 2
- Unable to use blueprints HOT 1
- werkzeug request.query_string is of type `str` rather than `bytes` HOT 4
- How to pass in 'runserver command' when using app.manager() HOT 1
- critical vulnerabilities when pushing image to ECR HOT 2
- Printing worker logs HOT 2
- issue with image entrypoint.sh HOT 1
- Container not accepting requests
- consider exposing worker_connections as a config setting
- 404 on Static folder HOT 1
- Gunicorn conig .py file with 2 workers and 2 threads handles just 2 requests in parallel
- print logs not displaying in log file until reboot of container HOT 3
- M1 Mac support HOT 2
- Many security issues reported by GCP Container scanning HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from meinheld-gunicorn-flask-docker.