Giter VIP home page Giter VIP logo

Comments (4)

tiangolo avatar tiangolo commented on May 23, 2024 1

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.

OleMussmann avatar OleMussmann commented on May 23, 2024 1

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.

tiangolo avatar tiangolo commented on May 23, 2024

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.

OleMussmann avatar OleMussmann commented on May 23, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.