【问题标题】:How to use Atomic counters with Spring Data Couchbase Reactive如何在 Spring Data Couchbase Reactive 中使用原子计数器
【发布时间】:2019-05-16 09:55:13
【问题描述】:

我正在使用 Spring Data couchbase 响应式执行读取、写入、更新操作。现在,我需要类似 Couchbase 中的 Atomic Counters 之类的属性来获取其中一个属性。我读到 Spring 反应式还不支持这个(可能是现在)特性,所以想要关于如何去做的指导。

我已经看过其他票中提供的解决方案:Atomic counters in Spring with Couchbase 但这不是阻塞调用,所以我想知道是否可以有类似的东西来进行非阻塞调用。

我可以为此使用 Couchbase 的反应式客户端,但这意味着我需要将 Couchbase 的反应式客户端和 Spring Data Couchbase 反应式结合起来,对此我不太确定它是否是好方法。

【问题讨论】:

    标签: reactive-programming couchbase spring-data-couchbase


    【解决方案1】:

    原子计数器不是 Spring Data 规范的一部分(Spring Data 最初是为 RDBMS 设计的)

    几个选项是:

    1) 通过存储桶对象进行简单的同步调用:

    myRepository.getCouchbaseOperations().getCouchbaseBucket().counter("mycounter", 1L, 1L );
    

    2) 使用标准的 Couchbase Java Reactive SDK (RxJava) 并转换 Observable: Adapting RxJava 1.1.5 to Reactor Core 3.1.0.M3

    【讨论】:

    • 所以如果我选择选项 2,那么我必须只使用 Couchbase Java Reactive SDK (RxJava) 进行所有调用?
    • 你可以“混合”两个SDK,所以只有这个地方是你需要使用标准java sdk的地方。
    • 您可以通过 myrepository.getCouchbaseOperations().getCouchbaseBucket().async() 访问它
    猜你喜欢
    • 1970-01-01
    • 2019-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-24
    • 1970-01-01
    • 2018-06-11
    相关资源
    最近更新 更多