摘要:
转载自 微信链接 设计模式是对大家实际工作中写的各种代码进行高层次抽象的总结,其中最出名的当属 Gang of Four (GoF) 的分类了,他们将设计模式分类为 23 种经典的模式,根据用途我们又可以分为三大类,分别为创建型模式、结构型模式和行为型模式。有一些重要的设计原则在开篇和大家分享下,这 阅读全文
摘要:
使用Redisson实现可重入分布式锁原理 使用Redisson实现公平锁原理 使用Redisson实现RedLock原理 使用Redisson实现ReadWriteLock原理 使用Redisson中Semaphore和CountDownLatch原理 Zookeeper实现分布式锁:可重入锁源码 阅读全文
摘要:
Spring整合rabbitmq实践(一):基础 Spring整合rabbitmq实践(二):扩展Spring整合rabbitmq实践(三):源码 死信队列 阅读全文
摘要:
1. 简单队列 以下为生产者 以下为消费者,不关闭通道则会一直监听队列 需要封装为工具类 同一个通道可以绑定不同队列,真正发送消息取决于basicPublish 分别设置队列和消息的持久化 2. 工作队列 生产者 消费者1 和 2 实现能者多劳 3. 广播 4. 订阅-Direct 5. 订阅 To 阅读全文
摘要:
1. 找工作 为了找到自己满意的工作,牛牛收集了每种工作的难度和报酬。牛牛选工作的标准是在难度不超过自身能力值的情况下,牛牛选择报酬最高的工作。在牛牛选定了自己的工作后,牛牛的小伙伴们来找牛牛帮忙选工作,牛牛依然使用自己的标准来帮助小伙伴们。牛牛的小伙伴太多了,于是他只好把这个任务交给了你。 思路: 阅读全文
摘要:
所谓AQS,指的是AbstractQueuedSynchronizer,它提供了一种实现阻塞锁和一系列依赖FIFO等待队列的同步器的框架,ReentrantLock、Semaphore、CountDownLatch、CyclicBarrier等并发类均是基于AQS来实现的,具体用法是通过继承AQS实 阅读全文
摘要:
阅读全文
摘要:
什么是操作数栈? - 与局部变量表一样,均以字长为单位的数组。不过局部变量表用的是索引,操作数栈是弹栈/压栈来访问。操作数栈可理解为java虚拟机栈中的一个用于计算的临时数据存储区。 - 存储的数据与局部变量表一致含int、long、float、double、reference、returnType 阅读全文
摘要:
1. 索引相关 二叉树:容易退化成链表 红黑树:数据量大是,高度过大,导致磁盘IO增加 Hash树:无法范围查找 B树 :每个节点都存数据,占用内存大;节点之间没有指针,也不好范围查找 B+树:范围查找方法--叶子节点之间双向链表连接 2. B+树 索引 MyISAM的表存储成3个文件。文件的名字与 阅读全文
摘要:
1. 代码校正 package ZJTD; import java.util.*; /** * @author zzm * @data 2020/5/17 9:04 * 1. 三个同样的字母连在一起,一定是拼写错误,去掉一个的就好啦:比如 helllo -> hello 2. 两对一样的字母(AAB 阅读全文