2012-07-09 195 views
0

有關示例,
首先實例維護一個計數變量(INIT值爲0),之後它服10名的請求,然後計數沒有更多的請求從而應用程序引擎增加到10 關閉一審。
之後,創建第二個實例來處理傳入的請求。
我的問題是計數變量將10或重置爲初始值(0)?
如果它被重置,是否有避免這種情況? (除了手動使用數據存儲)?
謝謝谷歌應用程序引擎實例的生命週期

回答

1

我推測你正在談論一個全局/模塊級別的變量,每個請求都會增加一個變量。答案是每個實例都在自己的進程中運行,因此不僅後續實例將從零開始,而且由於可以同時運行多個實例,因此每個實例都有自己的獨立計數器。

正確的做法是使用memcache來存儲密鑰,這將是所有實例中的單個值。您可以執行memcache.incr('counter')以原子方式增加該值。

如果堅持數據很重要,您可以查看存儲sharded counters