在使用redis-cli的时候,有个bigkey选项可以输出大键的信息,redis是怎么筛选的?
下面是具体的代码
redis-cli.c
static void findBigKeys(void) {
#存放5中类型的最大的值,与当前的大小进行对比
unsigned long long biggest[5] = {0,0,0,0,0};
unsigned long long samples = 0; 采样次数
redisReply *reply1, *reply2, *reply3 = NULL;
char *sizecmd, *typename[] = {"string","list","set","hash","zset"}; 查看这5中数据类型
char *typeunit[] = {"bytes","items","members","fields","members"};
int type;
printf("\n# Press ctrl+c when you have had enough of it... :)\n");
printf("# You can use -i 0.1 to sleep 0.1 sec every 100 sampled keys\n");
printf("# in order to reduce server load (usually not needed).\n\n");
while(1) {
/* Sample with RANDOMKEY */
reply1 = redisCommand(context,"RANDOMKEY");返回随机key
if (reply1 == NULL)