Как использовать атомарные счетчики с Spring Data Couchbase Reactive - PullRequest
1 голос
/ 16 мая 2019

Я использую реактив Spring Data couchbase для выполнения операций чтения, записи, обновления.Теперь мне нужно что-то вроде атомных счетчиков в Couchbase для одного из атрибутов.Я читал, что Spring реактив пока не поддерживает эту (возможно, сейчас) функцию, поэтому хотел бы узнать, как это сделать.

Я уже рассмотрел решение, предоставленное в другом тикете: Атомные счетчики в Spring с Couchbase Но это не блокирует вызовы, поэтому мне было интересно, могу ли я иметь что-то подобное для выполнения неблокирующих вызовов.

Я могу использовать реактивный клиент Couchbase для этого, нотогда это означает, что мне нужно объединить Reactive клиент Couchbase и Spring Data Couchbase реактивный, для которого я не слишком уверен, хороший ли это подход или нет.

1 Ответ

2 голосов
/ 16 мая 2019

Атомные счетчики не являются частью спецификации Spring Data (Spring Data изначально разрабатывался для СУБД)

Несколько вариантов:

1) Выполните простой вызов синхронизации через объект корзины:

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

2) Используйте стандартный Couchbase Java Reactive SDK (RxJava) и преобразуйте Observable: Адаптация RxJava 1.1.5 к Reactor Core 3.1.0.M3

...