Получите новые ключи Redis реактивным способом с помощью Redis данных Spring - PullRequest
0 голосов
/ 29 сентября 2018

У меня есть CoffeeRepository, реализованный с помощью Sprin Data Redis:

@Component
class CoffeeRepository {

ReactiveRedisOperations<String, Coffee> template;

public CoffeeRepository(ReactiveRedisOperations<String, Coffee> template) {
    this.template = template;
}

Flux<Coffee> findAll() {
    return template.<String, Coffee>opsForHash().values("coffees");
}

Flux<String> findAllKeys() {
    return template.<String, String>keys("*");
}

Когда я подключаюсь к Redis, чтобы спросить все ключи, я использовал этот код:

coffeeRepository.findAllKeys().subscribe(value -> System.out.println(value));

, и он работает правильно: онвозвращает все ключи несколькими порциями.

Как извлечь из Redis только новый ключ (принадлежащий парам ключ-значение, вставленным на сервер)?

Существует реактивный способ получить все новые ключии, следовательно, получить связанные значения?Аналогично тому, что происходит с использованием Kafka (когда на Kafka наступает новое событие, если у вас есть реактивный драйвер, потребитель получает уведомление об этом).

...