gpt4 book ai didi

django - Django View 内的 BeautifulSoup 导致 WSGI 超时

转载 作者:行者123 更新时间:2023-12-02 09:53:11 39 4
gpt4 key购买 nike

由于一个奇怪的原因,当我在 Django View 中实例化 BeautifulSoup 对象时,WSGI 超时。任何帮助都是值得赞赏的,因为我把头撞在墙上几个小时,却找不到这个问题的根源。

View :

def index(request):
soup = BeautifulSoup('<b>Bold</b>') # Removing this line solve the proble
return HttpResponse('Hello')

Apache日志中的错误消息:

[wsgi:error] [pid 4014] [client 127.0.0.1:50892] Timeout when reading response headers from daemon process 'test.local': /htdocs/test/test/wsgi.py

更新:这似乎是 bug在BeautifulSoup中,但是没有解决方案。

最佳答案

使用 C 扩展模块的各种 Python 第三方包,包括 scipy、numpy 和 Beautifulsoup,只能在 Python 主解释器中工作,默认情况下不能像 mod_wsgi 一样在子解释器中使用。您可以在下面的链接中找到它。

http://code.google.com/p/modwsgi/wiki/ApplicationIssues#Python_Simplified_GIL_State_API

您可以通过在conf文件中写入以下行来解决此问题。

WSGIApplicationGroup %{GLOBAL}

如果在同一服务器上运行多个 WSGI 应用程序,您可能需要开始使用守护进程模式进行调查,因为某些框架不允许多个实例在同一解释器中运行。 Django 就是这种情况。因此,使用守护进程模式,以便每个进程都在自己的进程中,并强制每个进程在各自守护进程模式进程组的主解释器中运行。

关于django - Django View 内的 BeautifulSoup 导致 WSGI 超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29935589/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com