怎样自己做网站模板,做网站网站应该注意什么,wordpress ptao,能做SEO优化的网站建设https://github.com/alibaba/RedisFullCheck/releases redis-full-check是阿里云RedisMongoDB团队开源的用于校验2个redis数据是否一致的工具。 redis-full-check通过全量对比源端和目的端的redis中的数据的方式来进行数据校验#xff0c;其比较方式通过多轮次比较MongoDB团队开源的用于校验2个redis数据是否一致的工具。 redis-full-check通过全量对比源端和目的端的redis中的数据的方式来进行数据校验其比较方式通过多轮次比较每次都会抓取源和目的端的数据进行差异化比较记录不一致的数据进入下轮对比记录在sqlite3 db中。然后通过多轮比较不断收敛减少因数据增量同步导致的源库和目的库的数据不一致。最后sqlite中存在的数据就是最终的差异结果。 redis-full-check对比的方向是单向抓取源库A的数据然后检测是否位于B中反向不会检测也就是说它检测的是源库是否是目的库的子集。如果希望对比双向则需要对比2次第一次以A为源库B为目的库第二次以B为源库A为目的库。 redis-full-check判断不一致的方式主要分为2类key不一致和value不一致。 key不一致 key不一致主要分为以下几种情况 lack_target : key存在于源库但不存在于目的库。type: key存在于源库和目的库但是类型不一致。value: key存在于源库和目的库且类型一致但是value不一致。value不一致 不同数据类型有不同的对比标准 string: value不同。 hash: 存在field满足下面3个条件之一 field存在于源端但不存在与目的端。field存在于目的端但不存在与源端。field同时存在于源和目的端但是value不同。set/zset与hash类似。list: 与hash类似。 field冲突类型有以下几种情况只存在于hashsetzsetlist类型key中 lack_source: field存在于源端keyfield不存在与目的端key。lack_target: field不存在与源端keyfield存在于目的端key。value: field存在于源端key和目的端key但是field对应的value不同。比较原理 对比模式comparemode有三种可选 KeyOutline只对比key值是否相等。ValueOutline只对比value值的长度是否相等。FullValue对比key值、value长度、value值是否相等。 对比会进行comparetimes轮默认comparetimes3比较 第一轮首先找出在源库上所有的key然后分别从源库和目的库抓取进行比较。 第二轮开始迭代比较只比较上一轮结束后仍然不一致的key和field。 对于key不一致的情况包括lack_source lack_target 和type从源库和目的库重新取key、value进行比较。value不一致的string重新比较key从源和目的取key、value比较。value不一致的hash、set和zset只重新比较不一致的field之前已经比较且相同的filed不再比较。这是为了防止对于大key情况下如果更新频繁将会导致校验永远不通过的情况。value不一致的list重新比较key从源和目的取key、value比较。每轮之间会停止一定的时间Interval。 对于hashsetzsetlist大key处理采用以下方式 len 5192直接取全量field、value进行比较使用如下命令hgetallsmemberszrange 0 -1 withscoreslrange 0 -1。len 5192使用hscansscanzscanlrange分批取field和value。
-s, --sourceSOURCE 源redis库地址ip:port如果是集群版那么需要以分号; 分割不同的db只需要配置主或者从的其中之一。例如 10.1.1.1:1000;10.2.2.2:2000;10.3.3.3:3000。-p, --sourcepasswordPassword 源redis库密码--sourceauthtypeAUTH-TYPE 源库管理权限开源reids下此参数无用。--sourcedbtype 源库的类别0db(standalone单节点、主从)1: cluster 集群版2: 阿里云--sourcedbfilterlist 源库需要抓取的逻辑db白名单以分号;分割例如0;5;15 表示db0,db5和db15都会被抓取-t, --targetTARGET 目的redis库地址ip:port-a, --targetpasswordPassword 目的redis库密码--targetauthtypeAUTH-TYPE 目的库管理权限开源reids下此参数无用。--targetdbtype 参考sourcedbtype--targetdbfilterlist 参考sourcedbfilterlist-d, --dbSqlite3-DB-FILE 对于差异的key存储的sqlite3 db的位置默认result.db--comparetimesCOUNT 比较轮数-m, --comparemode 比较模式1表示全量比较2表示只对比value的长度3只对比 key是否存在4全量比较的情况下忽略大key的比较--id 用于打metric--jobid 用于打metric--taskid 用于打metric-q, --qps qps限速阈值--intervalSecond 每轮之间的时间间隔--batchcountCOUNT 批量聚合的数量--parallelCOUNT 比较的并发协程数默认5--logFILE log文件--resultFILE 不一致结果记录到result文件中格式db diff-type key field--metricFILE metric文件--bigkeythresholdCOUNT 大key拆分的阈值用于comparemode4-f, --filterlistFILTER 需要比较的key列表以分号;分割。例 如abc*|efg|m*表示对比abc, abc1, efg, m, mxyz不对比efgh, p。-v, --version