redisのようなシングルスレッドのDBは、
極端な話コネクションは1つでよい。
javaやnode.jsでwebsocketを組んだとき、
1人1コネクションみたいにやっていたが、
そんな必要もない。
たくさんのコネクションを維持しても、
redisはシングルスレッドなので、
一度に処理できる命令は1つ。
(※multiを使っても一つと考える)
javaの場合は、スレッドセーフな領域に
redisコネクションを格納しておけばよく、
node.jsの場合は、global変数的な扱いで(※クラス外の定義変数かな?)、
コネクションを格納しておけばよい。
実際1つのコネクションでは、切断した時の影響が大きいので、
たとえば、a-z0-9の36個とかでもよいかなと。
また、MySQLのようなマルチスレッドでは、
コネクションの共用は気を付けておいたほうがよい。
なぜなら、トランザクションがあるから。
コネクションをアプリケーション内に維持できる場合は、
こんな風に考えて実装すると効果的だと思います。
apache+phpでは無理だけど、
python+wsgiとかではできそう。(railsはわからん)
以上