Our microservice is writing large volume of data to redis. Since the sequential processing is taking nearly 50 min to process the file, i tried to implement asynchronous processing.
Following are the redis properties :
redisMaxIdle=400
redisMinIdle=50
redisMaxWait=500
redisMaxTotal=100
redisReadTimeout=25000
redisConnectTimeout=25000
redis.write.max.attempts=3
core.pool.size=50
max.pool.size=50
chunk.size=1000``
I tried with different combinations of core.pool.size, max.pool.size and chunk.size but getting java.net.SocketTimeoutException: Read timed out" and the processing is failing after multiple retry.
Any suggestions on what the typical causes of this exception might be, and how we might proceed?
I tried different combinations of the jedis properties, few of them are
core.pool.size(100), max.pool.size(100) ,chunk.size(1000)
core.pool.size(10), max.pool.size(10) ,chunk.size(1000)
core.pool.size(50), max.pool.size(50) ,chunk.size(1000)
it's always throwing error while processing large file