Python 我们可以在GAE中运行多处理池吗?
可以在gae中运行多处理池吗 如果是,为什么我的代码在本地计算机上运行良好,但在django remote api中弹出以下错误消息:Python 我们可以在GAE中运行多处理池吗?,python,django,google-app-engine,multiprocessing,Python,Django,Google App Engine,Multiprocessing,可以在gae中运行多处理池吗 如果是,为什么我的代码在本地计算机上运行良好,但在django remote 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 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
您将无法在生产服务器上运行多处理,但如果您使用的是远程api,则可以在本地运行脚本(使用多处理),并让每个池进程通过远程api调用与生产服务器通信
如果您需要在服务器端代码中实际执行
多进程
风格的操作,那么Mapper API非常适合此任务。开发SDK环境甚至不会试图确保您的本地计算机只运行在Google的App Engine服务器上运行的操作。因此,如果在本地工作的东西在部署到GoogleAppEngine时不起作用,尤其是在任何SDK文档中都没有提到它的使用时,这永远不会是一个大惊喜。如果您需要在应用程序引擎上进行“后台工作”,您可能会对任务队列感兴趣:@Sasha是的。多处理在dev_appserver中工作的唯一原因是,它是2.5中引入的一个功能,并且OP运行的是2.6,或者更可能是任务队列API。