辽宁营商建设局网站,阳区城市规划建设局网站,wordpress静态博客主题,看广告挣钱一天300元php相关总结 一、分库分表
垂直拆分和水平拆分 垂直拆分#xff1a; 1.大表拆小表#xff0c;常用的字段单独拆分出来#xff0c;直接访问小表 2.每个库表不一样#xff0c;但是有一个相同的外键关联 水平拆分#xff1a; 1.hash取模拆分。 2.每个库表结构都一样#xf… php相关总结 一、分库分表
垂直拆分和水平拆分 垂直拆分 1.大表拆小表常用的字段单独拆分出来直接访问小表 2.每个库表不一样但是有一个相同的外键关联 水平拆分 1.hash取模拆分。 2.每个库表结构都一样结果不一样 3.单表数据减少有利性能 4.缺点扩容难度大可采用一致性hash算法 一致性hash算法 1.所有的服务器节点数据放在一个环中 2.创建真实节点和虚拟节点 中间件 jdbc直连shardingsphere proxy代理mycat优点–可以跨语言
二、redis数据类型 1.stringintembstr(小于等于44字节),raw(大于44字节) 2.hash:底层是一个dict数据量小或值小时会采用ziplist反之是hashtable 3.list:有序的数据结构分类ziplist和quicklist 4.set无序的集合自动去重 5.zset有序的集合自动去重 redis cluster模式 hash槽算法 crc16key%16384 缓存问题–、、击穿 穿透如id0等不存在的数据 解决方法 (布隆过滤器) 雪崩redis里面大量的key集体失效–大量请求到mysql里面去了 解决方案1.过期时间随机设置 2.定时任务重新设置过期时间 3.永不过期 击穿热点key突然失效–大量请求到mysql里面去了 解决方法1.加锁–分布式锁或互斥锁 三、mysql和redis一致性 1.延迟双删 2.第二次删除失败可以放在队列中循环删除 四、redis分布式锁 1.利用携带时间戳同一时间只让一个服务运行 2.zookeeper