Quantcast
Channel: Active questions tagged redis+java - Stack Overflow
Viewing all articles
Browse latest Browse all 2203

Redisson async procesing messages

$
0
0

I'm trying to aply Redisson features for my project as message broker and I have a question. Is it possible to push Redisson to precceding recieved messages asynchronously? I have created a small example, sent 4 messages from different URL's. I expected, that Redisson proceeded them asynchronously, but it did it one by one.Here the implementation:

public class RedisListenerServiceImpl implements MessageListener<String> {    private static final Logger log = LoggerFactory.getLogger(RedisListenerServiceImpl.class);    private final ObjectMapper objectMapper = new ObjectMapper();    @Override    public void onMessage(CharSequence channel, String stringMsg) {        log.info("Message received: {}", stringMsg);        MessageDto msg;        try {            msg = objectMapper.readValue(stringMsg, MessageDto.class);        } catch (final IOException e) {            log.error("Unable to deserialize message: {}", e.getMessage(), e);            return;        }        try {            //Do my stuff        } catch (Exception e) {            log.error("Unable to get service from factory: {}", e.getMessage(), e);        }    }}

And the config:

@Configurationpublic class RedisListenerConfig {    @Autowired    public RedisListenerConfig(RedissonClient redisClient,                               MessageListener redisListenerService,                               @Value("${redis.sub.key}") String redisSubKey) {        RTopic subscribeTopic = redisClient.getTopic(redisSubKey);        subscribeTopic.addListenerAsync(String.class, redisListenerService);    }}

Viewing all articles
Browse latest Browse all 2203

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>