bigKey的产生
1、使用String存储了大文件的二进制。
2、使用集合没有考虑到数据的规模,或者规模的增长。
3、哈希中冗余了大量键值对。
bigKey问题
1、操作大key时会阻塞线程:redis是单线程。
2、网络阻塞:在网络中占用大量网络流量。
3、阻塞工作线程:其他命令不能正常执行。
如何查看?
1、使用自带的--bigkeys,但是会影响主线程。
2、使用自带的scan命令。
3、使用开源工具redis-rdb-tools等分析RDB文件。
如何处理?
1、分割:将一个大的key分成多个小key。
2、手动清理:redis4.0之后使用unlink 启动异步线程去清理一个或多个指定key。
3、采用合适的数据结构。