You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
An initial experimental implementation of hot reloading in Dash.jl provided in #25 is essentially complete, and offers the same general level of functionality as found in Dash for Python or Dash for R.
However, the cycle time -- the interval between detecting changes to assets or app code, launching a new Julia process, bringing the current HTTP.jl server down, precompiling code in the new process, and relaunching the HTTP.jl server -- is noticeably longer than for either Python or R.
In tests running a very simple sample app, it takes roughly 30-40 seconds to start the HTTP.jl process and see the following status message appear indicating that the server is ready:
Simple sample app
using Dash
using DashHtmlComponents
app =dash()
app.layout =html_div(id="outer-div") dohtml_div("Hello Julia!", id="page-content")
endrun_server(app, debug=true, dev_tools_hot_reload=true)
rpkyle$ julia /tmp/testapp/test_reload.jl
[ Info: Running on http://127.0.0.1:8050
It can then take approximately 10-15 seconds upon making a change to the "Hello Julia!" string in the html_div for Julia + HTTP.jl + any other loaded packages to complete precompilation and finish restarting, and for the page to refresh. During this interval, the page/server are unresponsive:
rpkyle$ julia /tmp/testapp/test_reload.jl
[ Info: Running on http://127.0.0.1:8050
[ Info: Running on http://127.0.0.1:8050
Improving startup time required to launch Julia or load packages is an active area of development in the language (see here or issues labeled as "latency" for background).
This issue is a placeholder for further discussion on this issue, and potential improvements to reduce the time required between page refreshes when "hard" (updates to non-CSS assets or code) reloads are performed.
The text was updated successfully, but these errors were encountered:
The revised implementation of hot reloading provided in 556f838 seems to have improved cycle times dramatically, it now takes 25-30% of the time (approximately 3 to 5 seconds) to "hard" reload as it did previously using the temporary module method. I'm comfortable closing this issue for now, since the feature seems reliable and relatively snappy for general use.
An initial experimental implementation of hot reloading in Dash.jl provided in #25 is essentially complete, and offers the same general level of functionality as found in Dash for Python or Dash for R.
However, the cycle time -- the interval between detecting changes to assets or app code, launching a new Julia process, bringing the current HTTP.jl server down, precompiling code in the new process, and relaunching the HTTP.jl server -- is noticeably longer than for either Python or R.
In tests running a very simple sample app, it takes roughly 30-40 seconds to start the HTTP.jl process and see the following status message appear indicating that the server is ready:
Simple sample app
It can then take approximately 10-15 seconds upon making a change to the "Hello Julia!" string in the
html_div
for Julia + HTTP.jl + any other loaded packages to complete precompilation and finish restarting, and for the page to refresh. During this interval, the page/server are unresponsive:Improving startup time required to launch Julia or load packages is an active area of development in the language (see here or issues labeled as "latency" for background).
This issue is a placeholder for further discussion on this issue, and potential improvements to reduce the time required between page refreshes when "hard" (updates to non-CSS assets or code) reloads are performed.
The text was updated successfully, but these errors were encountered: