Python 我可以在GAE上持续运行一些东西吗?
我需要检查一些单词(或单词前缀)是否存在,最好的方法是构建一个Trie,但是在GAE上并不容易,它应该留在内存中(或者每次我查找一些字符串时都要构建),我不知道如何在GAE上实现它 理想的结果是,在应用程序启动时构建一个Trie,并在应用程序运行时保持它Python 我可以在GAE上持续运行一些东西吗?,python,google-app-engine,google-cloud-datastore,trie,Python,Google App Engine,Google Cloud Datastore,Trie,我需要检查一些单词(或单词前缀)是否存在,最好的方法是构建一个Trie,但是在GAE上并不容易,它应该留在内存中(或者每次我查找一些字符串时都要构建),我不知道如何在GAE上实现它 理想的结果是,在应用程序启动时构建一个Trie,并在应用程序运行时保持它 我试图将所有单词和前缀存储在一个大表中,但性能不佳。您可以使用实例内存来保存trie,并使用Python对象构建它 参见本文:使用其他选项来存储TIE。 < P>您可以考虑后端保存数据。 后端是一种特殊的应用程序引擎实例,它没有请求截止日期、更
我试图将所有单词和前缀存储在一个大表中,但性能不佳。您可以使用实例内存来保存trie,并使用Python对象构建它
参见本文:使用其他选项来存储TIE。
< P>您可以考虑后端保存数据。 后端是一种特殊的应用程序引擎实例,它没有请求截止日期、更高的内存和CPU限制以及跨请求的持久状态。它们由App Engine自动启动,可以长时间连续运行。每个后端实例都有一个用于请求的唯一URL,您可以跨多个实例对请求进行负载平衡 后端可以处理来自用户或系统其他部分的HTTP请求 应用程序,在后台连续启动和运行,或 由任务队列任务或Cron作业驱动。后端没有免费配额,是吗?有,但不是每天24小时。实际上是9点。但你的问题从来没有提到“免费”:(Trie有多大?如果它的大小合理,你可以在每个实例上重新构建它。@NickJohnson我在网上找到的一些dict,大约700k,在这种情况下,我会在每个实例上反序列化它。这将比存储在后端更快、更便宜。