我想知道Couchbase是否支持一致的增量計數器。從我在this doc中讀到的內容看,它並沒有,它只是封裝了一個讀/寫操作,所以你不需要自己做。當然這對我不起作用,因爲從你從數據庫中讀取數據的時候數據可能會改變。Couchbase中的原子計數器
1
A
回答
3
Couchbase絕對不會像memcached和Membase Server那樣,它支持在一個集羣內自動進行incr/decr操作。
cb.set("mykey", 1)
x = cb.incr("mykey")
puts x #=> 2
incr正在寫入並返回結果值。
「更新操作發生在服務器上,並在協議級別提供。」表示它在羣集上是原子的,並由服務器執行。
「這簡化了本來是兩階段的獲取和設置操作。」意味着而不是的兩個階段的操作,它是一個單一的操作!
0
如果您使用Java API,自版本2.0發佈以來,incr方法已被counter方法取代。
您需要使用您的存儲桶的計數器方法。此方法允許您定義計數器文檔的名稱(其中包含一個長類型)和增量。如果文檔不存在,它會創建它。官方文檔中定義了許多其他參數。
//Obtain the id from counter document and increment it
com.couchbase.client.java.Bucket bucket;
JsonLongDocument joCounter = bucket.counter("counter", 1);
//get the counter long value (might be useful to generate doc id)
long newCounter = joCounter.content();
該操作是原子操作,因此使用計數器時感到安全。 http://docs.couchbase.com/developer/java-2.0/documents-atomic.html
相關問題
- 1. Couchbase彈簧中的原子計數器
- 2. DynamoDB中的原子計數器
- 3. 原子計數器異常
- 4. 重置/更新TTL的Couchbase計數器
- 5. 原子計數器Postgres vs MongoDB
- 6. OpenGL原子計數器等效於CUDA
- 7. 片段着色器中的GLSL原子計數器(和分支)
- 8. 計算PDB文件中的原子數
- 9. Couchbase還原錯誤
- 10. 合金 - 其他原子使用的計數原子
- 11. 如何在OpenCL中原子增加全局計數器
- 12. 計劃函數來計算列表中的原子元素
- 13. OpenGL計算着色器原子操作
- 14. 使用簡單更新計數器列的原子增量
- 15. Couchbase統計超時
- 16. 什麼是計劃中的原子?
- 17. JS字計數器 - 刷新計數器返回頁面原來的計數時,
- 18. Lisp函數:計算表達式中的原子數
- 19. Amazon DynamoDB條件寫入和原子計數器
- 20. GLSL原子計數器在閱讀時發生段錯誤
- 21. 使用MySQL,ASP.NET和Entityframework實現原子計數器
- 22. 遞減原子計數器 - 但<only>條件
- 23. 如何使用dynamodb&c來實現原子更新計數器#
- 24. 文件中的句子計數器
- 25. 計算列表中的所有原子的出現次數? - LISP
- 26. Couchbase中WHERE子句的條件
- 27. 通過原子座標計算原子間的距離
- 28. 節點js + CouchBase Lite + CouchBase服務器
- 29. 關於WHERE子句的Couchbase子查詢
- 30. 在計劃中分配原子列表