【发布时间】:2011-06-30 07:31:29
【问题描述】:
是否可以在 gae 中运行多处理池?
如果是,为什么我的代码在我的本地机器上运行良好,但使用 django 远程 api 弹出以下错误消息:
File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/multiprocessing/pool.py", line 148, in map
return self.map_async(func, iterable, chunksize).get()
File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/multiprocessing/pool.py", line 422, in get
raise self._value TypeError: __init__() keywords must be strings
【问题讨论】:
-
开发 SDK 环境甚至不会弱弱地尝试确保您的本地计算机将只运行在 Google 的 App Engine 服务器上运行的东西。因此,如果某些在本地工作的花哨的东西在部署到 Google App Engine 时不起作用,这绝不应该是一个大惊喜,尤其是在任何 SDK 文档中都没有提到它的使用时。如果您需要在 App Engine 上做“后台工作”,您可能对任务队列感兴趣:code.google.com/appengine/docs/python/taskqueue
-
@Sasha 是的。多处理在 dev_appserver 中起作用的唯一原因是因为它是 2.5 中引入的功能,并且 OP 运行的是 2.6。
标签: python django google-app-engine multiprocessing