高并发高质量资料整理

美团订单系统演进
2021年06月19日 759次浏览

如何浅显易懂地解说 Paxos 的算法和zookeeper的ZAP协议?

看了几篇前面的答案,感觉都是为了逻辑的验密性,进行了大篇幅的推理,这样确实非常严谨,但是理解起来就要废一番功夫了。我就不用一步一步的推理来描述了,这样虽然丧失一些严密性,但是会尽量提高可读性,争取让每个人都能理解这个算法的要点。Paxos算法背景介绍:Paxos算法是分布式技术大师Lamport提出
2021年06月16日 1,190次浏览

彻底理解CPU Load-这一篇就够了

我们经常去看Linux的平均负载。通过uptime或者top命令就可以显示出,平均负载的内容如下:load average: 0.09, 0.05, 0.01大多数人都对平均负载有所了解:三个数字分别代表了一分钟,五分钟和十五分钟三个时间段内的CPU负载的平均值,而数字越低越好。数字越高表示系统出现
2021年06月11日 864次浏览

mysql核心原理优秀文章

Innodb中的事务隔离级别和锁的关系一文搞懂InnoDB MVCC机制
2021年06月10日 818次浏览

高性能队列——Disruptor

背景Disruptor是英国外汇交易公司LMAX开发的一个高性能队列,研发的初衷是解决内存队列的延迟问题(在性能测试中发现竟然与I/O操作处于同样的数量级)。基于Disruptor开发的系统单线程能支撑每秒600万订单,2010年在QCon演讲后,获得了业界关注。2011年,企业应用软件专家Mart
2021年06月08日 854次浏览

mybatis批量更新语句

mysql 实现批量 可以用点小技巧来实现:UPDATE yoiurtable SET dingdan = CASE id WHEN 1 THEN 3 WHEN 2 THEN 4 WHEN 3 THEN 5 ENDWHERE id IN
2021年06月07日 932次浏览

线程池之Executors线程池工具类

Executors: 对 ThreadPoolExecutor和ScheduledThreadPoolExecutor 封装的工具类,方便创建线程池。但是《阿里巴巴Java开发手册》中有要求:【强制】线程池不允许使用Executors去创建,而是通过ThreadPoolExecutor的方式,这样
2021年06月06日 720次浏览

用volatile的视角,来打开JMM内存模型

灵魂拷问开始】面试官:Java并发这块了解的怎么样?说说你对volatile关键字的理解?面试官:能不能详细说下什么是内存可见性,什么又是指令重排序呢?面试官:volatile怎么保证可见性的?多个线程之间的可见性,你能讲一下底层原理是怎么实现的吗?面试官:volatile关键字是怎么保证有序性的?
2021年06月06日 755次浏览

二叉树之前序遍历,中序遍历,后序遍历

前序遍历前序遍历(DLR),是二叉树遍历的一种,也叫做先根遍历、先序遍历、前序周游,可记做根左右。前序遍历首先访问根结点然后遍历左子树,最后遍历右子树。前序遍历首先访问根结点然后遍历左子树,最后遍历右子树。在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。若二叉树为空则结束返回,
2021年06月06日 645次浏览

装饰器模式

装饰器动态地给一个对象添加一些额外的职责。就增加功能来说,相比生成子类更为灵活。装饰器(Decorator)模式,是一种在运行期动态给某个对象的实例增加功能的方法。我们在IO的Filter模式一节中其实已经讲过装饰器模式了。在Java标准库中,InputStream是抽象类,FileInputStr
2021年06月05日 651次浏览