My Dash App is very slow

Hello
I was a beginner.
I’m using dash+plotly to create a dashboard page.
when i test on local machine (mac m1) i run it takes 2s, but when deploy to my company server, it takes more than 1 minute.
I tried the solution here: Show and Tell - Server Side Caching - #12 by np8. But it only improves slightly. Can help me?
I have come across some automated js packages for example async-plotlyjs. It’s pretty heavy at 1MB. Is there any solution for this problem?

For people to be able to help, you should post application code and diagnostics for the problematic case, i.e. when you app is hosted on the company server. It seem that the network overview is from you local hosting as the load time is ~ 2s.

Hi Emil,
I just checked my code again. it took time because the code wasn’t optimized, I tweaked it and saw a significant improvement in time.
Thank you. :grinning:

Hi @Emil ,
I use dcc.Interval to create a real-time dash app.
But I see it to run a bit longer than when not in use.
Is there any solution for this problem?

Hello,

Did you fixed your problem or no? because i also faces same issue from last couple of days and can’t understand what actual going on so please help me.

sorry,
I still haven’t found a solution to this problem. :joy:
I am also looking for a solution for realtime

The Interval component is the component to use for real-time updates (another option is the Websocket component, but that’s more advanced). I have been using it with a refresh rate of down to ~ 25 ms (client side callback) and 1s (server side callback). So unless you need faster updates than that, it should work.

I have a question as to why the client side callback doesn’t support python. it’s really hard, because I don’t know js

Can you please mention what have you enhanced. You mentioned that it was already fast on your local machine but slow on the server.

I am facing a similar problem in which i have to recreate some graphs whenever the user sort or filter the graphs data options and the graph takes in a lot of data. The size of the graph across the network is near to 1MB however its fast when I use a browser on the same machine running the application but when I try a browser from a different device its very slow.

Remember to install flask-compress and set compress=True in Dash(), which will significantly automatically reduce the size of data packets in the underlying network communication of callback functions.