读《Redis深度历险记》
数据结构stringlistset有序 sethash设计内存回收机制redis不会实时回收内存;它的key是分页存放的,当一个页的所有key都被删除后,才会统一回收该页的内存;虽然没有立即回收内存,但是不用的内存还是可以分配给新的key使用;手动执行flushdb,可以立即回收内存。
过期机制主节
...
MySQL-什么是分区
概念分区类似于水平分表。水平分表需要用户预先手动显式创建出多张分表(如tbl_user0, tbl_user1, tbl_user2),在物理上实实在在的创建多张表,通过客户端代理(Sharding-JDBC等)或者中间件代理(Mycat等)来实现分表逻辑。分区是MySQL的一个插件Plugin功能
...
MySQL-分区及中间件简介
分区分区类似于水平分表。水平分表需要用户预先手动显式创建出多张分表(如tbl_user0, tbl_user1, tbl_user2),在物理上实实在在的创建多张表,通过客户端代理(Sharding-JDBC等)或者中间件代理(Mycat等)来实现分表逻辑。分区是MySQL的一个插件Plugin功能
...
从SQL的执行原理优化多表查询
查询sql语句的执行流程根据这个顺序,将可优化的点往前放,尽早降低后面的处理次数
1234567891011121314151617From - 将涉及的表加载到内存ON - 作为产生笛卡尔积表的挑选条件JOIN - 此处产生笛卡尔积表(A表*B表),需要大量内存WHERE - 数据进行过滤,取出符
...
MySQL-分区及中间件简介
中间件分类
lib库
业务直接到数据库,少一层proxy效率更高
没有proxy的lvs的单点问题
proxy
统一管理所有到数据库的连接,连接复用
基础查询功能抽象,减少代码耦合
易于实现监控、数据迁移、连接管理等功能
sharding-jdbc(开源,lib)
当当应用框架ddf
...
关于拖拽排序的后端存储设计
发表于
|
分类于
项目案例
需求
课程
讲师
排序
课程1
1
1
课程2
1
2
课程3
1
3
课程4
1
4
课程5
1
5
课程6
1
6
可以随意调整课程顺序,如:将课程1调到课程3和课程4之间
课程
排序
课程2
1
课程3
2
课程1
3
课程
...