flask web app项目突然改变行为 - 连接调试器两次

时间:2018-02-18 08:52:39

标签: python flask pycharm

我正在使用PyCharm中的Flask开发一个Web应用程序。

到目前为止,我没有遇到任何问题,但突然发生了一些变化,这使得工作变得非常困难。

该应用程序首先做的是连接到网络文件夹,并创建该文件夹中所有文件和目录的映射(Windows计算机中的网络共享文件夹)。它过去需要大约五秒钟,它开始运行应用程序没有任何问题。

但是,我不知道发生了什么(我想我什么都没做),但突然之间文件映射大约需要三分钟,调试器再次尝试连接并再次启动应用程序。它也会再次映射文件。执行此操作后,应用程序开始运行。但是,如果我在代码中更改一行,它会再次执行此循环。

由于文件映射变得非常慢,我检查了托管文件的计算机,但它没有显示任何问题的迹象。

我真的很困惑,因为这突然发生了。

以下是我在控制台窗口中收到的消息,如果是PyCharm。

pydev debugger: process 3412 is connecting

Connected to pydev debugger (build 163.15188.4)
 * Restarting with stat
pydev debugger: process 2248 is connecting

 * Debugger is active!
 * Debugger PIN: 288-833-753
 * Running on http://0.0.0.0:80/ (Press CTRL+C to quit)

有没有人有类似的经历?你能否分享一下你对这个问题的见解?

由于

1 个答案:

答案 0 :(得分:1)

我会尝试使用debug=Falseuse_reloader运行,以防止在检测到文件发生更改后看到烧瓶重新启动,并查看是否有任何更改。

有关此处重新加载的详细信息: How to stop Flask from initialising twice in Debug Mode?

启动缓慢可能归因于应用初始化代码中的任何长时间运行的任务。

您需要自己包含更多代码或配置代码以对其进行故障排除。

如果您正在从网络位置读取或写入IO,则IO可能是您的瓶颈。

最后,我最近经历了故障排除/优化烧瓶应用启动时间的努力 - 也许对您有用的东西: Slow Flask Development Server Initialization Profiling: `WaitForSingleObject`