You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
load module init hash slot size, default size 2^10, max size 2^16. (once make sure the slot size, don't change it)
load module init activerehashing,databases from config, activerehashing used to sub server event to rehash slot keys dict
load module init num_threads, if thread_num>0,init thread pool size to do migrate job, default donot use thread pool.
sub ServerEvent CronLoop(ServerLoop),FlushDB,Shutdown
sub CronLoop server event hook to resize/rehash dict (db slot keys tables)
sub FlushDB server event hook to delete one/all dict (db slot keys tables)
sub Shutdown server event hook to release dicts (db slot keys tables) and free memory.
sub KeyspaceEvents STRING,LIST,HASH,SET,ZSET, LOADED; GENERIC, EXPIRED
sub keyspaces STRING,LIST,HASH,SET,ZSET, LOADED notify event hook to add dict/skiplist keys
sub keyspaces GENERIC, EXPIRED notify event hook to delete dict/skiplist keys
support slot tag key migrate, for (smart client/proxy)'s configSrv admin contoller layer use it.
use SLOTSMGRTTAGSLOT cmd to migrate slot's key with same tag,
default use slotsrestore batch send key, ttlms, dump rdb val ... (restore with replace)
SLOTSRESTORE if num_threads>0, init thread pool size to send slotsrestore batch keys job. loadmodule like this ./redis/src/redis-server --port 6379 --loadmodule ./redisxslot.so 1024 4 --dbfilename dump.6379.rdb
about migrate cmd, create a thread async block todo per client, splite batch migrate, don't or less block other cmd run. loadmodule like this ./redis/src/redis-server --port 6379 --loadmodule ./redisxslot.so 1024 4 async --dbfilename dump.6379.rdb
support setcpuaffinity for migrate async thread like redis bio job thread config setcpuaffinity on linux/bsd(syntax of cpu list looks like taskset). loadmodule like this ./redis/src/redis-server --port 6379 --loadmodule ./redisxslot.so 1024 0 async 1,3 --dbfilename dump.6379.rdb
about migrate cmd, support pipeline buffer migrate, use migrate cmd like this SLOTSMGRTTAGSLOT 127.0.0.1 6379 30000 835 withpipeline. use withpipeline current don't support thread pool and async block migrate.