2011-01-05 72 views
6

我已啓用Warming Requests到我的應用程序,在app.yaml中添加以下指令。如何在應用日誌中配置避免錯誤404的預熱請求?

inbound_services: 
- warmup 

綜觀應用程序的日誌我看到這種多個條目:

1. 01-05下午2時49分50.037/_ah /預熱404個300ms的280cpu_ms 1KB 查看詳情

0.1.0.3 - - [05/Jan/2011:05:49:50 -0800] "GET /_ah/warmup HTTP/1.1" 404 1188 

2. I 01-05 02:49 PM 50.336

此要求原因編輯一個新的進程 將爲您的應用程序啓動,
並因此導致您的應用程序代碼 第一次被加載。
對於您的應用程序,此請求可能因此花費較長時間,並且 使用的CPU數量比典型請求
多。

這是有道理的,因爲變暖請求文件說:

這使得App Engine的 基礎設施發出GET請求 到/ _ah /熱身。您可以在此目錄中執行 處理程序,以執行 應用程序特定的任務,例如 預緩存應用程序數據。

AFAIK ahreserved URL,即腳本處理程序和靜態文件處理程序路徑將永遠不匹配這些路徑!

我應該簡單地添加ah/warmup路由將它關聯到一個空的Web處理程序嗎?它是否正確?

回答

4

/_ah/開始的網址工作得很好,儘管文檔可能會讓您相信。

所以,是的,只需將處理程序映射到/_ah/warmup即可使預熱請求生效。不過,我不確定使用空處理程序會帶來多少好處。通常你會想要導入所有重要的模塊,並執行應用程序需要響應的任何緩存預熱。

+1

請參閱Nick Johnson(Google)在這裏回答:http://code.google.com/appengine/forum/?place=topic%2Fgoogle-appengine%2Fx7vcuNK48Xg%2Fdiscussion – 2011-01-05 18:35:09

+1

/_ah /下的網址是保留的,這意味着您不應該將它們用於您自己的目的,但這些URL有幾個記錄的預期用途,包括熱身請求。 – 2011-01-06 02:48:25

相關問題