App Engine搜索:如何并行搜索多个搜索索引?

问题描述:

我有很多索引,而且目前速度很慢,因为当用户查询时,它依次遍历每个结果,然后附加结果。 indexes = search.get_indexes(index_name_prefix=userDomain, limit=200) domain_indexes = [index for index in indexes if userDomain==str(index.name).split(":")[0] ] for index in indexes: response.append(responseListItem) 这使得它非常慢,问题是我是否可以将它们排除并且并行执行它们,然后合并结果并将响应发回给用户?App Engine搜索:如何并行搜索多个搜索索引?

+0

是的,你可以同时做这些。有什么问题? – 2014-12-02 04:58:16

+0

如何将结果合并回来发送给回复?基本上,一旦我把它们放在任务队列中,response.append停止工作。 – 2014-12-02 04:59:01

+1

如果您需要响应用户请求,则不能使用任务队列。正如德米特里所暗示的那样,您需要进行一堆异步调用,等待他们的结果,合并结果并回复客户端。 – 2014-12-02 06:00:54

有没有尚未记录功能,使搜索API异步调用,就像数据存储:

https://code.google.com/p/googleappengine/source/browse/trunk/python/google/appengine/api/search/search.py#3636

+0

谢谢,关于如何将App Engine升级到此版本的想法?似乎他们拥有它@ 1.9.10? – 2014-12-02 07:06:16

+0

它在生产中已经是最新版本,您只能升级本地开发服务器。 – 2014-12-02 07:07:07

+0

是的,想知道本地主机是否有任何方式可以升级应用程序引擎库,而无需下载55 MB文件https://cloud.google.com/appengine/downloads – 2014-12-02 07:13:41