Sometimes we get a lot of errors when connecting to Redis.

Sometimes we get a lot of such errors: ConnectionPool::TimeoutError

It happens because concordia-production-redis (owner: concordia, region: lhr)app responds very slowly.
Then something happens and the error disappears. No any problems in logs.

What is the reason?

There’s Redis app settings

You will get better performance if you connect to concordia-production-redis.internal from other apps, but I don’t think that’s the problem.

ConnectionPool::TimeoutError most likely means your app is using all the connections the pool allows and it can’t check one out for a new command.

I would look at the metrics for your Redis to see how many connections are open at any given time. If it’s not very many, check your app connection pool config and see if you can increase the pool size.

concordia-production-web app try to connect to concordia-production-redis

It’s interesting. we started to get such errors from other apps, eg fly-foodbank-production-web => fly-foodbank-production-redis