Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么我的web应用程序中出现死线超标异常?_Java_Eclipse_Google App Engine_Exception_Servlets - Fatal编程技术网

Java 为什么我的web应用程序中出现死线超标异常?

Java 为什么我的web应用程序中出现死线超标异常?,java,eclipse,google-app-engine,exception,servlets,Java,Eclipse,Google App Engine,Exception,Servlets,我正在使用谷歌应用程序引擎。以前一切正常,但现在当我调用servlet时,浏览器会花费很多时间,然后显示以下内容: DeleteBooksServlet: com.google.apphosting.api.DeadlineExceededException: This request (0000000000000000) started at 2011/10/08 10:58:13.573 UTC and was still executing at 2011/10/08 10:59:13.

我正在使用谷歌应用程序引擎。以前一切正常,但现在当我调用servlet时,浏览器会花费很多时间,然后显示以下内容:

 DeleteBooksServlet: com.google.apphosting.api.DeadlineExceededException: This request (0000000000000000) started at 2011/10/08 10:58:13.573 UTC and was still executing at 2011/10/08 10:59:13.036 UTC.
在这个servlet中,我有一个查询,它从数据库中获取所有书籍,然后删除它们


以前,同一个servlet工作得很好,但现在我明白了。为什么我现在得到这个东西?提前感谢。

因为数据库中的书籍太多,查询需要花费很多时间(超过1分钟),而GAE在请求太长时会抛出此异常


请参见

,因为数据库中的书籍太多,查询需要花费大量时间(超过1分钟),而且当请求太长时,GAE会抛出此异常

请参见删除n本书需要O(n)个时间。当该时间超过请求限制时,您需要加快该操作

一种非常好的通用技术是将删除内容分成多个批次,其中一个批次可以删除(例如,100本书)。然后使用任务队列框架计划和运行批处理。有些人更进一步,使用框架来管理批处理。

删除n本书需要O(n)个时间。当该时间超过请求限制时,您需要加快该操作


一种非常好的通用技术是将删除内容分成多个批次,其中一个批次可以删除(例如,100本书)。然后使用任务队列框架计划和运行批处理。有些人更进一步,使用框架管理批处理。

超过1分钟?你是在删除超过1000万本书还是什么?或者您是在使用非索引列上的
进行删除,其中
?阅读有关如何以及何时正确索引DB表的内容。是否超过1分钟?你是在删除超过1000万本书还是什么?或者您是在使用非索引列上的
进行删除,其中
?阅读有关如何以及何时正确索引DB表的内容。