Geo*_*Geo 7 java google-app-engine quota
doGet()servlet中的一个非常简单的java代码在GAE上获得超过一秒的cpu时间.我已经阅读了一些与配额相关的文档,显然我没有做错任何事.
//Request the user Agent info
String userAgent = req.getHeader("User-Agent");
Run Code Online (Sandbox Code Playgroud)
我想知道最多使用CPU的是什么,我使用谷歌帮助推荐.
//The two lines below will get the CPU before requesting User-Agent Information
QuotaService qs = QuotaServiceFactory.getQuotaService();
long start = qs.getCpuTimeInMegaCycles();
//Request the user Agent info
String userAgent = req.getHeader("User-Agent");
//The three lines below will get the CPU after requesting User-Agent Information
// and informed it to the application log.
long end = qs.getCpuTimeInMegaCycles();
double cpuSeconds = qs.convertMegacyclesToCpuSeconds(end - start);
log.warning("CPU Seconds on geting User Agent: " + cpuSeconds);
Run Code Online (Sandbox Code Playgroud)
上面代码告诉我的唯一事情是检查标头将使用超过一秒(1000毫秒)的CPU时间,这对于Google来说是日志面板上的警告.这似乎是一个非常简单的请求,仍然使用超过一秒的CPU.
我错过了什么?
每个人的娱乐日志图像下方.
为了所有人的利益,我发布了完整的代码.
@SuppressWarnings("serial")
public class R2CComingSoonSiteServlet extends HttpServlet {
private static final Logger log = Logger.getLogger(R2CComingSoonSiteServlet.class.getName());
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException {
//The two lines below will get the CPU before requesting User-Agent Information
QuotaService qs = QuotaServiceFactory.getQuotaService();
long start = qs.getCpuTimeInMegaCycles();
//Request the user Agent info
String userAgent = req.getHeader("User-Agent");
//The three lines below will get the CPU after requesting User-Agent Information
// and informed it to the application log.
long end = qs.getCpuTimeInMegaCycles();
double cpuSeconds = qs.convertMegacyclesToCpuSeconds(end - start);
log.warning("CPU Seconds on geting User Agent: " + cpuSeconds);
userAgent = userAgent.toLowerCase();
if(userAgent.contains("iphone"))
resp.sendRedirect("/mobIndex.html");
else
resp.sendRedirect("/index.html");} }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
945 次 |
| 最近记录: |