- 博客(21)
- 收藏
- 关注
原创 SpringBoot整合RabbitMQ
编写配置文件发布订阅模式(fanout)配置类消费者1和2(相同)生产者生产者应该是controller接受消息,在service层处理发送消息,此处通过测试类编写结果绑定关系代码运行结果消费者1监听routingkey为queue1的队列消费者2监听routingkey为queue2的队列生产者发送三个消息,routingkey分别为queue1、queue2、13结果对应routingkey的消息被消费。
2024-11-08 15:51:07
484
原创 RabbitMQ复习
在最开始的时候我们学习到 RabbitMQ 分发消息采用的轮询分发,但是在某种场景下这种策略并不是很好,比方说有两个消费者在处理任务,其中有个消费者 1 处理任务的速度非常快,而另外一个消费者 2 处理速度却很慢,这个时候我们还是采用轮询分发的化就会到这处理速度快的这个消费者很大一部分时间处于空闲状态,而处理慢的那个消费者一直在干活,这种分配方式在这种情况下其实就不太好,但是 RabbitMQ 并不知道这种情况它依然很公平的进行分发。
2024-11-07 21:50:16
1230
原创 SpringBoot2.7.10+mybatis-plus
SpringBoot2.7.10整合mybatis-plus,外加hutool工具类
2024-01-28 15:48:20
1265
原创 JAVA_IO流
缓冲流,也叫高效流,是对4个基本的FileXxx字节缓冲流字符缓冲流缓冲流的基本原理,是在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,减少系统IO次数,从而提高读写的效率。Java 提供了一种对象序列化的机制。用一个字节序列可以表示一个对象。
2023-12-17 11:13:16
169
1
原创 Dubbo
在上面的步骤中,我们已经进入了Dubbo-Admin的主界面,在【快速入门】章节中,我们定义了服务生产者、和服务消费者,下面我们从Dubbo-Admin管理界面找到这个两个服务。经过测试,服务生产方(提供者)的超时时间覆盖了消费方(消费者)的超时时间,但是超时时间在服务的生产方或者消费方单独地都生效,建议把超时时间配置在服务的生产(@Service)因为前端工程是用vue开发的,所以需要安装node.js,node.js中自带了npm,后面我们会通过npm启动。
2023-12-02 15:36:06
133
原创 Zookeeper
zookeeper类似文件系统,client可以创建节点、删除节点,那么如何做到节点的权限控制呢?zookeeper的access control list访问控制列表可以做到这一点。权限模式(scheme):授权的策略授权对象(id):授权的对象权限(permission):授予的权限zookeeper的权限控制是基于每个zonde节点的,需要对每个节点设置权限。每个znode支持设置多种权限控制发难和多个权限。
2023-11-30 15:46:30
217
原创 23考研王道图(第六章)自用笔记
本文摘要:文章系统介绍了图的基本概念,包括图的定义、无向图/有向图、简单图/多重图、顶点度数的计算等。重点阐述了图的存储结构,特别是邻接矩阵法的实现,包括非带权图和带权图的表示方法,并分析了其空间复杂度。此外,还讨论了图的相关术语如路径、连通性、子图、生成树等,以及几种特殊图的性质。最后针对邻接矩阵法,详细说明了如何计算顶点度数并进行了性能分析。
2022-11-24 14:34:20
714
原创 23考研王道查找(第七章)自用笔记
本文系统介绍了查找算法的基本概念与主要方法,首先定义了查找表、关键字、静态/动态查找表等术语,重点分析了三种核心查找算法:顺序查找、折半查找和分块查找,详细说明了它们的实现原理、代码示例和效率分析(ASL)。文章特别深入讲解了B树这一重要数据结构,包括其定义、高度计算、插入和删除操作的具体规则,通过图示和分步示例展示了B树在动态数据管理中的关键作用。最后,简要提及了B+树的基本概念作为补充。整体内容结构清晰,涵盖了查找算法从基础到进阶的核心知识点。
2022-08-10 22:25:52
1696
原创 23考研王道排序(第八章)自用笔记
本文介绍了排序算法的基本概念、评价指标和分类,重点讲解了插入排序(直接插入排序、折半插入排序、希尔排序)和交换排序(冒泡排序)的实现原理及代码实现。排序算法根据数据存储位置分为内部排序和外部排序,评价指标包括时间复杂度、空间复杂度和稳定性。插入排序通过将元素插入已排序子序列实现排序,希尔排序采用分组策略提升效率。冒泡排序通过相邻元素比较交换实现排序。各类算法的时间复杂度从O(n)到O(n²)不等,稳定性也有所差异,实际应用中需根据需求选择合适的算法。
2022-07-31 15:15:34
441
原创 23考研王道树与二叉树(第五章)自用笔记ing
本文系统介绍了树与二叉树的基本概念和性质。主要内容包括:树的定义与基本术语(根节点、叶子结点、分支结点等);二叉树的基本概念、五种状态及特殊类型(满二叉树、完全二叉树、二叉排序树等);树与二叉树的核心性质(如结点数与度数关系、各层结点数限制等);以及二叉树的顺序存储结构及其局限性。重点阐述了完全二叉树的特性,包括结点编号规则、高度计算等,并指出顺序存储对非完全二叉树的空间浪费问题。文章通过图示和公式详细解析了各类考点,为理解树形数据结构提供了系统化的理论基础。
2022-07-26 17:51:08
522
原创 23考研王道串(第四章)自用笔记
摘要:本文介绍了字符串的基本概念和操作,包括串的定义、子串、主串、空串等术语。讲解了串的两种存储结构(顺序和链式)及其实现方法,重点分析了朴素模式匹配算法(BF算法)和KMP算法的原理与实现。串作为线性表的一种特殊形式,在计算机科学中具有广泛应用,理解其存储结构和匹配算法对数据处理至关重要。文中提供了C++代码示例展示串的基本操作和匹配算法的具体实现。
2022-07-26 17:46:59
474
原创 23考研王道栈、队列和数组(第三章)自用笔记更新ing
本文介绍了栈和队列的基本概念及其实现方式。栈是后进先出的线性结构,支持push、pop等操作,可采用顺序存储(静态/共享栈)或链式存储实现。队列是先进先出的线性结构,支持入队、出队操作,重点介绍了循环队列的顺序表实现方式,包括初始化、判空、入队出队等核心操作。文中通过代码示例详细展示了各种数据结构的定义和基本操作实现,并配有示意图帮助理解。
2022-07-26 17:45:00
338
原创 23考研王道线性表(第二章)自用笔记
线性表是一种具有相同数据类型的有限序列,包含顺序存储(顺序表)和链式存储(链表)两种实现方式。顺序表通过物理位置相邻存储元素,支持随机访问但插入删除效率低;单链表通过指针连接元素,插入删除高效但不支持随机访问。两种结构各有优缺点:顺序表存储密度高但扩容不便,链表动态灵活但需额外存储指针。操作时间复杂度方面,顺序表按位查找为O(1),而插入删除平均O(n);链表查找和插入删除均为O(n)。实际应用中需根据需求选择合适结构。
2022-07-26 17:40:38
480
3
原创 23考研王道绪论(第一章)自用笔记
本文系统介绍了数据结构与算法的基本概念。数据结构三要素包括逻辑结构(集合、线性、树形、图状)、物理结构(顺序、链式、索引、散列存储)和数据的运算。算法特性强调有穷性、确定性等,"好"算法需具备正确性、可读性等品质。重点分析了时间复杂度和空间复杂度的计算方法,提出加法规则、乘法规则等评估技巧,指出常对幂指阶的复杂度增长关系。通过分析基本操作执行次数与问题规模的关系来评估算法效率,为选择和设计高效算法提供理论依据。
2022-07-26 17:33:16
214
原创 VUE指令笔记
本文总结了Vue.js的核心知识点,包括:el挂载点、data数据对象、常用指令(v-text、v-html、v-on、v-show、v-if、v-bind、v-for、v-model)的使用方法和注意事项。重点介绍了指令的语法、作用原理和应用场景,如v-show和v-if的区别、v-for遍历数据、v-model双向绑定等。还提到Vue与Axios结合进行网络数据开发的应用,为Vue初学者提供了系统的基础知识框架和实用技巧参考。
2021-12-04 15:11:14
903
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅