Redis 是 NoSQL 数据库,key-Value 数据库,键值数据库会使用 hash 表存储值和数据。Redis 全称是 Remote Dictionary Server ,是用字典存储数据,也就是 key-value 类型的数据。
直接连接的问题是每次都要创建一个连接,这开销非常大,使用连接池机制,事先创建好多个连接,将其放到连接池中,当需要Redis 操作的时候,直接从连接池中获取,完成后不是释放掉连接,而是返回到连接池。
连接池实例一般保存两个list,保存的是 _avilable_connections 和 _in_user_connections, 分别代表连接池中可以使用集合和正在使用的连接池集合。
当想要创建连接时,从 _availavle_connections 中获取一个连接并使用,并将其_in_use_connections 中,如果没有可用的连接,才会创建一个新连接,再将其放到 _in_use_connections 中,如果连接使用完毕从 _in_use_connection中删除,然后添加到 _avilavle_connections 中,后续使用。