我已经使用python破折号(v1.6.1)编写了一个应用程序。我已使用Amazon Linux 2深度学习AMI将其部署到EC2。此应用程序需要几分钟才能根据用户输入运行优化问题。大约1分钟后,应用程序产生错误,提示“更新 name_of_div.children 的回调错误”。
这里有一个小代码示例可以重现该错误。
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import State, Input, Output
from dash.exceptions import PreventUpdate
import time
app = dash.Dash(
__name__, meta_tags=[{"name": "viewport", "content": "width=device-width"}]
)
server = app.server
app.layout = html.Div([
html.Button(
"Run",
id="button1",
),
dcc.Slider(
id="slider1",
min=0,
max=10,
step=1,
value=0,
),
dcc.Loading(
id="Loading1",
children=[
html.Div(id="out1", children=[html.P("Nothing yet")]),
],
type="default"
)
])
@app.callback(Output('out1', 'children'),
[Input('button1', 'n_clicks')],
[State('slider1', 'value')])
def update_page(n_clicks, value):
if n_clicks is None:
raise PreventUpdate
else:
time.sleep(65)
out_string = "The output is " + str(value)
return html.P(out_string)
if __name__ == '__main__':
app.run_server(debug=True, host='0.0.0.0', port=8050)
是否存在引起问题的配置?可能与网络相关吗?我找不到包含解决方案的类似帖子。我的问题听起来与this unsolved one类似。
谢谢!