Flask hangs after importing pandas (also numpy, matplotlib etc.)

落爺英雄遲暮 提交于 2020-01-24 09:51:05

问题


Why is Flask hanging after importing the pandas lib or several other scientific libs? It still works, when running it locally via SSH, but when visiting the URL the browser loads and loads and nothing happens.


回答1:


After a long and painful exercise, I was able to finally get my app running .The issue is with the pandas 0.19.2 built when the application is getting imported in the .wsgi file

To resolve it Remove your imports from the global level and insert them at the function level

import pandas as pd
....
@app.route('/getFunction', methods=["GET"])
def sample_get_function():
    movieData=pd.read_csv('someData.csv')

to

....
@app.route('/getFunction', methods=["GET"])
def sample_get_function():
    import pandas as pd
    movieData=pd.read_csv('someData.csv')

This is not a very good solution but it is working




回答2:


The solution is for Ubuntu with Apache2 server. You have to configure the following file:

/etc/apache2/sites-available/your-flask-app-file.conf

paste the following line below WSGIScriptAlias:

WSGIApplicationGroup %{GLOBAL}  



回答3:


The other solution by @saitam was necessary, but not sufficient in my case.

As before edit:

/etc/apache2/sites-available/<your-flask-app>.conf

Add or update WSGIApplicationGroup with:

WSGIApplicationGroup %{GLOBAL}

and remove or edit WSGIProcessGroup such that you have:

WSGIProcessGroup %{GLOBAL}

When this was set to something else, the problem persisted.

Some people advocate setting the number of threads to 1, but this was not necessary for me. The following works fine:

WSGIDaemonProcess <...> processes=2 threads=6

Linux version: Ubuntu 14.04.3 LTS

Pandas version: 0.19.2

Python version: 3.4.3

Apache version: 2.4.7



来源:https://stackoverflow.com/questions/41099433/flask-hangs-after-importing-pandas-also-numpy-matplotlib-etc

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!