Что означает количество подключений к Redis DB?
В heroku каждый поставщик redis (myredis, redistogo, redisgreen, openredis) указывает количество подключений к экземпляру redis для каждого плана, который они предоставляют.
Что означает это число? Это количество веб-серверов, подключенных к экземпляру, или количество конечных пользователей, которые используют веб-приложение и изменяют данные?
2 ответа
Что означает это число? Это количество веб-серверов, подключенных к экземпляру?
Это количество сокетов, подключенных к Redis. Клиентская библиотека Redis может подключаться к Redis с помощью одного сокета или с помощью пула сокетов (или соединений). Так что действительно важно, сколько сокетов подключено через Redis одновременно.
Чтобы получить больше информации о том, кто подключен к вашей базе данных Redis, используйте команду CLIENT LIST (v2.4.0 +), и вы должны получить что-то вроде этого:
redis 127.0.0.1:6379> client list
addr=127.0.0.1:37219 fd=6 name= age=672320 idle=216 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=info
addr=10.90.20.10:6379 fd=7 name= age=665888 idle=2 flags=M db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=exec
addr=10.90.20.12:42266 fd=5 name= age=325274 idle=2 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=0 obl=0 oll=0 omem=0 events=r cmd=evalsha
addr=127.0.0.1:51897 fd=8 name= age=3447 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=32768 obl=0 oll=0 omem=0 events=r cmd=client
Большинство адаптеров БД создают "пул" соединений с базой данных, которые они могут использовать.
Этот недавний пост от Heroku https://devcenter.heroku.com/articles/concurrency-and-database-connections объясняет это гораздо более подробно, чем я мог.