笔记
文章平均质量分 80
有梦想的人不睡觉丶
这个作者很懒,什么都没留下…
展开
-
2021复习笔记
多线程的实现方式,区别:实现Runnable,继承Thread,两者并没有什么实际区别,就算实现Runnable调用的时候还是需要new一个Thread,只不过实现Runnable更好,因为Java规定单继承多实现多线程的状态:新生,就绪,运行,阻塞,死亡多线程有几种同步方式:有很多种,但是我了解的有悲观锁synchronized(升亏奈斯特),还有乐观锁CASsynchronized(升亏奈斯特):java的一个关键字,每次只让一个线程操作共享资源CAS:比较并替换,但其实它是一个原子性的操原创 2021-03-24 17:08:24 · 141 阅读 · 1 评论 -
【数据库篇】MySql
SQL优化策略晚点整SQL的左连接,右连接,等值连接(Right Join)右连接where只影响左表。(Left Join)左连接where只影向右表。(Inner join)等值连接where只返回两个表中,联结字段相等的行。select * from tbl1 Left Join tbl2 where tbl1.ID = tbl2.ID左连接后的检索结果是显示tbl1的所有数据和tbl2中满足where 条件的数据。简言之 Left Join影响到的是右边的表,右连接.原创 2020-12-11 23:19:07 · 177 阅读 · 0 评论 -
【分布式篇】分布式事务(3PC)
分布式系统如何保证事物(3PC,点我)第一阶段: 称为准备(prepare)阶段:协调者向所有参与者发送消息,准备提交所有参与者开始事务执行的准备工作:如:为资源上锁。如果事务的准备工作成功,则回应“可以提交”,否则回应“拒绝提交”。第二阶段: 称为提交(commit)/回滚(rollback)阶段:所有的参与者都回应“可以提交”,协调者向所有的参与者发送“正式提交”的命令。参与者完成正式提交,并释放所有资源,然后回应“完成”,协调者收集各个服务的“完成”回应后结束事务。如果.原创 2020-12-11 23:19:00 · 496 阅读 · 0 评论 -
【分布式篇】Redis缓存
和别的内存的框架比redis为什么快,底层实现Redis是纯内存数据库,Redis全程使用hash结构,hash查找可以达到每秒百万次的数量级采用单线程,避免多进程或者多线程导致的切换而消耗CPU,不用去考虑加锁释放锁各种锁的问题,不存在出现死锁而导致的性能消耗之所以Redis是单线程,是因为Redis的处理数据能力很快,瓶颈不是CPU而是机器内存或网络带宽,如果CPU真的成为瓶颈那么可以考虑redis-cluster集群(redis-cluster,点我看细节)。...原创 2020-12-11 23:18:48 · 100 阅读 · 0 评论