簡體   English   中英

Google App Engine中的並發

[英]Concurrency in Google app engine

我在Google App Engine中有一個聊天應用程序。 我正面臨並發問題。 當聊天從一端開始時,該聊天將廣播到該帳戶中的所有可用座席。 當1個人回應時,該個人將獲得所有權並刪除該會話中所有剩余的個人。

在這里,我面臨着同時來自多個代理響應的並發請求的問題。 此時,每個請求都將刪除會話中剩余的代理,會話中沒有任何主體。

我認為這可以通過代碼同步解決。 但是,對於多個實例,此邏輯不起作用。 由於代碼位於不同的服務器中。

有沒有一種方法可以使用數據存儲區/內存緩存來實現該同步。

請對此提出建議。

提前致謝。

戈文德

看看將CAS與內存緩存結合使用,或者,您可以在數據存儲區中使用事務,並使用已知密鑰計划控制實體。 我不使用Java,所以無法舉一個例子,而且我只能在cas上找到Java的api文檔

https://developers.google.com/appengine/docs/java/javadoc/com/google/appengine/api/memcache/MemcacheService.CasValues

但是用python寫的仍然可以解釋發生了什么。

https://developers.google.com/appengine/docs/python/memcache/#Python_Using_compare_and_set_in_Python

我嘗試使用交易。 但是出於某種原因,它對我不起作用。 我不知道原因。 但是使用Memcache增量/減量我們可以解決問題。 這些方法是原子的。 這是簡單而樂觀的。

請通過這個小組

https://groups.google.com/forum/#!topic/google-appengine-java/wtESRwKCF5U

感謝您的更新。

戈文德

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM