【发布时间】:2011-04-01 03:33:21
【问题描述】:
您好,我使用的 servlet 包含一个带有两个对象的持久性管理器对象,当我在仪表板中使用它时,我收到以下消息:
“此 URI 使用大量 cpu,可能很快就会超过其配额。”
我有 2300 这个 uri 的 avg Cpu,为什么需要这么长时间?
当我在开始时查看日志时,我有大量的 cpu,例如 2000,而在我少于 200 之后,为什么?
10 分钟后,当我回来时,我的 CPU 又很高了,为什么?
可以减少这个时间吗?
编辑:代码
public void doGet(HttpServletRequest req, HttpServletResponse resp) 抛出 IOException {
String param1 = req.getParameter("param1");
String param2 = req.getParameter("param2");
PersistenceManager pm = PMF.get().getPersistenceManager();
String query = "select from " + Myclass.class.getName()+
"where parameter1 == param1 && parameter2 == param2 "+
"parameters String param1, String param2";
List<Myclass> result = (List<Myclass>) pm.newQuery(query).execute(param1, param2);
if(result.isEmpty()) {
pm.close();
resp.sendRedirect("/welcome.jsp");
}
else {
pm.close();
resp.sendRedirect("/question.jsp");
}
}
【问题讨论】:
-
如果没有看到代码,绝对不可能知道为什么您的代码会占用如此多的 CPU 时间。
-
好的,我用代码编辑我的消息