【发布时间】:2020-01-04 02:27:40
【问题描述】:
我正在使用谷歌应用引擎部署我的烧瓶网络应用程序,为了实现这一步,我按照以下步骤操作
- 为应用程序创建代码(基于 Web)
- 创建一个 lib 文件夹,使用 requirements.txt 文件安装所有软件包
- 创建了 appengine_config.py,其中添加了 lib 文件夹。
- 创建文件 app.yaml 以在本地系统上测试应用程序,然后再部署到 google 应用引擎上。
我成功完成了这 4 个步骤。完成这些步骤后,
我运行以下命令
/usr/lib/google-cloud-sdk/bin/dev_appserver.py --admin_port=9000 --port=9999 app.yaml
结果,我发现谷歌应用引擎在本地服务器上运行成功。请参阅here 的截图,但是当我尝试在本地服务器的端口 9999 上运行代码时,出现以下错误
import multiprocessing
File "/usr/lib/python2.7/multiprocessing/__init__.py", line 65, in <module>
from multiprocessing.util import SUBDEBUG, SUBWARNING
File "/usr/lib/python2.7/multiprocessing/util.py", line 41, in <module>
from subprocess import _args_from_interpreter_flags
ImportError: cannot import name _args_from_interpreter_flags
为了解决这个错误,我在互联网上搜索了这个错误并得出了以下结论
“你不能在 appengine 上使用多处理。多处理是为了 为并行创建和协调子进程。 这不是 appengine 上的选项。 Appengine 还有其他设施,例如 异步方法、任务队列和后端(可以使用传统的 线程)。”
根据我在互联网上的研究,上述错误是由多处理和 subprocess.py 引起的,谷歌云引擎不支持。
我担心的是,如果这与我理解的完全一样,那么解决这个问题的方法是什么,因为这不会让代码部署在谷歌云引擎上。
高度赞赏任何想法或解决方案。
【问题讨论】:
标签: google-app-engine google-cloud-platform