我有一个python plotly dash应用程序,它是这样组织的:
class MyApp:
def __init__(self):
self.app = dash.Dash(__name__)
self.app.layout = ...
...
def methods(self):
"""My methods for doing stuff in the app."""
...
此外,我还有一个脚本,在其中实例化MyApp并编写回调:
my_app = MyApp()
server = my_app.app.server
# my callbacks go here
if __name__ == '__main__':
my_app.app.run_server()
这种方法在localhost以及我尝试过的几个托管平台(包括GCP)上运行得非常好。但它在赫罗库身上表现出非常奇怪的行为
通过在回调中打印id(my_app)
,我观察到Heroku以某种方式以2个唯一的my_app
对象结束,并且回调的每个调用似乎都以其中一个随机结束。因此,回调返回的输出完全过时,与预期行为不同步
它从不引发错误,而是在用户输入时在两个不同版本的图形等之间随机切换
知道为什么会这样吗?为什么它只发生在Heroku上,而我没有测试过其他地方
谢谢你的建议
目前没有回答
相关问题 更多 >
编程相关推荐