MySQL学习笔记
事务隔离级别的理解假设有A,B两个事务 未提交读:B事务能读到A事务还未提交的修改 几乎只有坏处没有好处的级别 提交读:B事务能读到A事务提交后的修改,可能导致B事务内两次查询得到的结果不一样 可重复读:B事务多次进行相同的查询,读到的同一条记录的结果一致,即使在中间A事务对这条记录进行了修改。但是仍然可能有“幻读”,即A事务在多个查询中间插入了新数据,B事务查到的结果会不一致。 串行化 ...
Read more
《kafka权威指南》读书笔记
kafka特点 支持多生产者、多消费者、数据持久化于磁盘、具有良好的伸缩性(集群)、性能高。 使用kafka后,生产者与消费者不再耦合,生产者只管生产数据,而不用担心消费者数量,消费速度,消费是否成功。消费者只需要订阅自己关注的主题,在有需要的场景下支持调整偏移量,重新消费数据。 kafka生产者 发送消息的方式 同步发送消息 在Java实现里,发送会返回一个Future对象,调用Fut ...
Read more
一个进程稳定占用CPU 100%问题处理记录
前几个月遇到过这样一个问题:一个业务进程的CPU占用率稳定在99.9x%到100%浮动(16核服务器,CPU满载为1600%),业务代码都是IO密集型的增删改查,没有太多占用CPU的操作,感觉不太正常。由于故障处理第一时间没有记录相关命令的执行结果,只能模拟一下执行相关命令的结果。问题调查过程如下:1.执行top,按P按照cpu占用率排序,找到该进程,记录进程号pid top - 21:40:4 ...
Read more
一个redis分布式锁的错误实现记录
今天同事发现自己写的一个redis分布式锁未生效,一个task在3台机上跑了(总共部署了4台机器),这个分布式锁的伪代码大致如下: try { if (!redisClient.setnxpx("lock", "1", expireTime)) { return; } //下面是业务代码 } catch ...
Read more
下班下班
修身治国平天下,下班宵夜打dota,溜了
Read more