2014-02-13 49 views
0

我正在嘗試將使用Twilio的PHP應用程序遷移到Google Apps並且遇到了一些問題。作爲一個簡單的測試,我從我創建的Google App內發送了一條短信到我的手機。它發送正常,但我收到了兩次的消息;確認它實際上是執行兩次我發送了這個紀元時間 - 它們相距約1秒。重複在Google App Engine中通過PHP發送HTTP/Twilio請求

我檢查了日誌,看到這個 - 「這個請求導致你的應用程序啓動一個新的進程,從而導致你的應用程序代碼被首次加載,因此這個請求可能需要更長的時間並使用更多的CPU而不是您的應用程序的典型請求。「我嘗試完全刪除Twilio的使用,並用一個簡單的「Hello World」回聲代替它,同樣的消息出現在該請求的日誌中。

我該如何避免這種行爲?

UPDATE

下面是使用下面的代碼從我Requestb.in測試頭。垃圾箱被同一個IP地址擊中兩次 - 我只進入了應用程序頁面一次。

<?php 
$result = file_get_contents('http://requestb.in/BINID'); 
echo $result; 

頁眉 -

第一個請求: 的User-Agent:AppEngine上,谷歌; (+ http://code.google.com/appengine; APPID:S〜MYAPP) 連接:關閉 接受編碼:gzip X - 請求-ID:e7583bda-DFEB-4431-92a5-aa4af0bf06e8 主機:requestb.in

第二請求: User-Agent:AppEngine-Google; (+ http://code.google.com/appengine; APPID:S〜MYAPP) X - 請求-ID:e766375b-bea8-4b79-a869-e2603309bec7 接受編碼:gzip 主機:requestb.in 連接:關閉

第二更新

我將紀元時間作爲一個GET變量添加到requestb.in地址中,bin被兩次擊中兩次,具有完全相同的歷元,兩個不同的IP地址,相隔一秒。所以這告訴我代碼被執行了一次,但是以某種方式從兩個IP地址訪問了兩次bin。有時它似乎只有一個IP地址。真的很困惑這裏..我甚至嘗試從頭開始一個新的應用程序,相同的結果。

+0

它只是隨機似乎已經停止了重複..在下班後試圖弄明白。 – NightMICU

+0

或者可能不是。似乎隨機停止重複,然後返回 – NightMICU

+0

最新評論/更新 - 我現在在App Engine上運行Laravel,並且此問題目前還沒有出現。如果任何人有任何線索可能導致這一點,反饋將是有幫助的。應用程序將發送短信,顯然重複是一個問題。 – NightMICU

回答

0

我想你會發現此消息「」這個要求引起了新的工藝,爲您的應用程序被啓動,「是不相關的。

除非你使用預熱請求,你總會看到此消息,如果一個實例是開始服務用戶面臨的請求

我會看看你的代碼,看看如何發送消息的代碼可以執行兩次 嘗試做一些記錄周圍的發送代碼,看看你是否在相同的請求兩次。

+0

有關如何登錄的任何建議?我試過'file_put_contents',但它返回了一個只寫的錯誤。我嘗試了一個包含Request Bin的'file_get_contents',看起來兩個IP地址請求了內容 - 是否有可能以某種方式啓動了此應用程序的兩個實例? – NightMICU

+0

確認 - 再次嘗試請求,它們相隔一秒,除了最後一位數字相同的IP地址 - .48和.49 – NightMICU

+0

不幸的是,我對PHP一無所知,因此我不確定如何執行日誌記錄。我認爲有一個系統日誌調用我PHP會讓你登錄。 –