摘要: 1. volatile的作用 保证共享变量对于多线程之间的可见性 防止指令重排序 2. 计算机的组成 程序启动后,会加载到内存中 内存中会有多条指令,由pc程序计数器来记录指令地址 指令执行,内存中的数据放入寄存器,ALU运算单元计算,计算完成后返回到寄存器,然后写入到内存 3. 线程可见性 可见性 阅读全文
posted @ 2020-02-22 12:52 塔下补刀就是菜丶 阅读(539) 评论(0) 推荐(0) 编辑
摘要: Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 1. String类型(一个键最大存储512M) 应用场景 计数器(incr、incrby、decr、decrby属于string数据结构,它们是原子 阅读全文
posted @ 2020-02-20 15:57 塔下补刀就是菜丶 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 1. 为什么需要主从复制? a. 在复杂的业务中,有一个sql需要锁表,导致不能使用读的服务,影响业务的运行,使用主从复制,让主库写,从库读,保证业务的运行 b. 做数据的热备 c. 架构扩展,业务量原来越大,I/O访问评率过高,做多库存储,提高单个机器的I/O性能 2. 原理(默认采用的是异步的方 阅读全文
posted @ 2020-02-19 14:08 塔下补刀就是菜丶 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 1. 缓存穿透 web服务器在处理请求的时候,先去redis查询数据,没有查到,然后到mysql去查数据 低频的缓存穿透不可怕,使用布隆过滤器解决,把mysql的热门数据放到布隆过滤器中过滤,不直接通过数据库 2. 缓存击穿(一般不用处理) redis中有一条热门数据到时间失效后,依然热门,同时又大 阅读全文
posted @ 2020-02-15 17:05 塔下补刀就是菜丶 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 1. 网络协议 应用层(http ftp ssh协议) 表示层 回话层 传输层(TCP) 网络层 数据链路层 物理层 2. 请求Baidu主页 linux 人为创建流指向socket 文件描述符 0输入1输出2错误 连接后,不发送东西,会发网络通信阻塞 TCP--面向连接的(3次握手后建立连接),可 阅读全文
posted @ 2020-02-15 15:19 塔下补刀就是菜丶 阅读(146) 评论(0) 推荐(1) 编辑
摘要: 1. 原理 通过不断地缩小想要获取数据的范围来筛选出最终想要的结果,同时把随机的事件变成顺序的事件,也就是说,有了这种索引机制,我们可以总是用同一种查找方式来锁定数据。 2. b+数性质 索引字段尽可能小 索引的最左匹配(从左到右查找) 3. 索引分类 1.普通索引index :加速查找 2.唯一索 阅读全文
posted @ 2019-11-20 10:53 塔下补刀就是菜丶 阅读(147) 评论(0) 推荐(1) 编辑
摘要: 在执行的sql语句前加explanin 1. table 显示这一行数据关于那张表 2. type 显示连接使用了何种数据类型 排序const<eq_reg<ref<range<indexhe<ALL system 表只有一行:system,这是const连接类型特殊的情况 const 表中的一个记 阅读全文
posted @ 2019-11-19 15:47 塔下补刀就是菜丶 阅读(112) 评论(0) 推荐(0) 编辑
摘要: find_in_set()函数使用,可以模糊查询 concat(str1,str2) 如有任何一个参数为NULL ,则返回值为 NULL。 case when then end 横纵表转换 UNION 操作符用于合并两个或多个 SELECT 语句的结果集 去重 union all 所有 distin 阅读全文
posted @ 2019-11-14 15:49 塔下补刀就是菜丶 阅读(86) 评论(0) 推荐(1) 编辑
摘要: 不同点 1. java.sql.date是针对sql使用的,只有日期部分,没有时间部分 2. java.util.date是java.sql.date的父类 之间的转换关系 java.sql.Date sqlDate=new java.sql.Date(utilDate.getTime()); 阅读全文
posted @ 2019-10-15 14:46 塔下补刀就是菜丶 阅读(1959) 评论(0) 推荐(1) 编辑
摘要: HEAD^ 上个版本,HEAD~2 上上个版本miced commitId 1. 查看日志 git log 2. 此时如果想撤销commit,同时保留git add git reset --soft HEAD^ 3. 删除工作空间改动代码,撤销commit,撤销git add git reset - 阅读全文
posted @ 2019-10-15 14:32 塔下补刀就是菜丶 阅读(3875) 评论(0) 推荐(1) 编辑