У меня есть 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 наступает новое событие, если у вас есть реактивный драйвер, потребитель получает уведомление об этом).