我有一个Google App Engine应用程序,可定期处理内存密集型长时间运行任务的突发事件。我在Python2.7运行时以线程安全模式使用taskqueue API,因此我的每个实例都在同时处理多个任务。因此,我经常得到这些错误:限制每个App Engine实例的任务请求数
超出软专用空间限制与服务8个请求后总137.496 MB
处理这个请求后,发现处理该请求的过程中被使用过很多记忆并被终止。这很可能会导致下一个请求应用程序使用新的进程。如果您经常看到此消息,那么您的应用程序中可能会有内存泄漏。
据我所知,每个实例每个都承担8个任务并最终达到软内存限制。任务开始时使用的内存量非常低,但最终增长到大约15-20MB。
有什么办法可以限制告诉App Engine为实例分配不超过5个请求吗?或者告诉App Engine,该任务预计将在10分钟内使用20MB内存并进行相应调整?
我不想使用后端API,因为我希望处理任务的实例的数量能够自动缩放,但如果这是唯一的方法,我想知道如何构造它。