В моем проекте я создал простую тему pub / sub с помощью radisson (https://github.com/redisson/redisson). Publisher опубликует некоторое сообщение, и на разных машинах будет работать несколько подписчиков. Когда я публикуюсь, все подписчикиполучают сообщение. Но я хочу, чтобы кто-либо из подписчиков обработал сообщение, т. е. если один обрабатывает сообщение, другие должны просто игнорировать его. Возможно ли это с Radisson?
LISTENER:
RTopic topic = redisson.getTopic("topic2");
topic.addListener(Person.class, new MessageListener<Person>() {
@Override
public void onMessage(CharSequence charSequence, Person person) {
System.out.println("PERSON : "+person.toString());
}
});
ИЗДАТЕЛЬ:
Person person = new Person("anyName","female");
RedissonClient redisson = Redisson.create();
RTopic topic = redisson.getTopic("topic2");
topic.publish(person);
Можно ли установить блокировку или что-то такое, чтобы ее слушал только один подписчик. Поддержат ли это другие инструменты.