2013-01-16 32 views
1

我一直在使用App Engine頻道API獲取間歇性問題。對於最多,也許90%的時間,一切正常。但剩下的10%的時間我收到一個無法使用的頻道。看了這個代碼好幾個月了,我堅信這個問題不是由於邏輯錯誤造成的。通過無法使用的通道,我的意思是即使客戶端成功連接到它,服務器也無法向其發送消息。大部分涉及的客戶端和服務器成功完成的操作:應用引擎頻道已成功創建但無法使用

  • 在服務器上,我創建一個新的客戶端ID唯一的會話
  • 客戶端獲取相應的令牌,並連接到它
  • 通道
  • 在客戶端,的OnOpen()被稱爲信道插座

一件事情不會成功上是/ _ah /信道的/主叫連接用於這些有缺陷的信道。我嘗試了幾十種可能的解決方法,但都沒有成功。現在,我通過優雅地重試直到成功,來處理這個問題,但如果沒有這些技巧,它將非常好。

回答

1

我還沒有看到任何代碼,但是從你說的話可能就涉及到

Intermittent error code 400, description 「」 on client connecting to channel

我使用的是一種蠻力循環消息的所有客戶端套接字(即使它們已被關閉,它有點多餘,但開銷似乎很低),並沒有撿到任何問題(我還沒有測試過,以及要麼)

+0

嘿,我也發佈了這個問題 - 它是相關的,但基於我的測試的一個不同的問題。在那個問題中,你會得到一個錯誤,所以你至少可以做些什麼,即使目前沒有任何東西能夠保證解決方案。在這種情況下,沒有任何錯誤 - 您看到一個看起來有效的通道,所有通話都成功了,但實際上已經死了。另外 - 另一個問題似乎比這個更頻繁地發生。 – er0

+0

如果你想發佈一些代碼片段,我可以在這裏運行它並嘗試並複製你的問題? – 2013-01-16 14:58:01

相關問題