shell腳本執(zhí)行redis命令 redis keys命令為什么導(dǎo)致阻塞?
redis keys命令為什么導(dǎo)致阻塞?因?yàn)閞edis是單線程的,當(dāng)keys的個(gè)數(shù)比較大的時(shí)候,keys命令執(zhí)行后,后面的命令會(huì)被阻塞,當(dāng)keys的個(gè)數(shù)達(dá)到一定的值,keys怎么會(huì)不返回呢,導(dǎo)致red
redis keys命令為什么導(dǎo)致阻塞?
因?yàn)閞edis是單線程的,當(dāng)keys的個(gè)數(shù)比較大的時(shí)候,keys命令執(zhí)行后,后面的命令會(huì)被阻塞,當(dāng)keys的個(gè)數(shù)達(dá)到一定的值,keys怎么會(huì)不返回呢,導(dǎo)致redis宕機(jī)
在info命令的輸出結(jié)果中:usedMemory是redis實(shí)例中所有鍵及其值占用的內(nèi)存量MemoryRSS是操作系統(tǒng)實(shí)際分配給redis進(jìn)程的內(nèi)存。這個(gè)值通常大于已用內(nèi)存,因?yàn)閞edis的內(nèi)存分配策略會(huì)產(chǎn)生內(nèi)存碎片。used fragmentation Ratio是內(nèi)存碎片的比率。正常情況下,大約是1。如果大于1,例如1.8,則表示內(nèi)存碎片非常嚴(yán)重。一般來(lái)說(shuō),這三個(gè)值是可以的。