- 博客(141)
- 收藏
- 关注
原创 使用StreamAPI 断言组合,结合本地缓存做模糊查询(比mysql效率提升近1000倍)
使用StreamAPI 断言结合本地缓存做模糊查询(比mysql效率提升近1000倍)
2022-06-20 20:49:17
1949
转载 RabbitMQ单机版部署指南
文章目录1.单机部署1.1.下载镜像1.2.安装MQ2.集群部署2.1.集群分类2.2.设置网络笔记是黑马李老师Cloud课的笔记,黑马的视频讲的真的太棒了!!不得不感慨一句:0基础、学IT … 😘😘😘😘视频地址:https://www.bilibili.com/video/BV1LQ4y127n4?p=158&spm_id_from=pageDriver1.单机部署我们在Centos7虚拟机中使用Docker来安装。1.1.下载镜像方式一:在线拉取docker pull rabbit
2022-06-05 17:42:58
405
原创 ElasticSearch高级篇(数据聚和、自动补全、数据同步、分片集群)
ElasticSearch高级篇(数据聚和、自动补全、数据同步、分片集群)
2022-06-03 21:09:33
817
原创 JVM学习(JVM内存模型 、JVM GC(垃圾回收)、 Java Class 、ClassLoader 、JVM JIT Compiler(即时编译器))
JVM学习
2022-06-03 20:35:14
168
原创 超简单方式在IDEA的源码中添加注释(不影响debug)
我们在阅读源码的时候,会想要在源码中添加一些自己的注释,但是往往会弹出file is read only,代码只读最常用的方法是自己下载源代码然后在idea中设置代码的Sourcepath,然后就可以编辑了但是这样的方法常常也有一些问题,例如:如果改动了源码的位置,debug的时候会导致运行代码的行号和真正的jre中编译后的代码行号对应不上,不匹配的情况如果要看复杂项目的源码(例如Spring源码),可能几十上百个源码包,难道一个一个这样去配重启idea或者某些情况下Sourcepat
2022-05-30 10:52:23
3946
4
原创 docker安装单节点elasticsearch、kibana,es集群并安装IK分词器
文章目录1.部署单点es1.1.创建网络1.2.加载镜像1.3.运行2.部署kibana2.1.部署2.2.DevTools3.安装IK分词器3.1.在线安装ik插件(较慢)3.2.离线安装ik插件(推荐)1)查看数据卷目录2)解压缩分词器安装包3)上传到es容器的插件数据卷中4)重启容器5)测试:3.3 扩展词词典3.4 停用词词典4.部署es集群笔记是黑马李老师Cloud课的笔记,黑马的视频讲的真的太棒了!!不得不感慨一句:0基础、学IT … 😘😘😘😘视频地址:https://www.bilibil
2022-05-28 18:41:55
780
原创 ElasticSearch之DSL查询
文章目录1.DSL查询文档1.1.DSL查询分类1.2.全文检索查询1.2.1.使用场景1.2.2.基本语法1.2.3.示例1.2.4.总结1.3.精准查询1.3.1.term查询1.3.2.range查询1.3.3.总结1.4.地理坐标查询1.4.1.矩形范围查询1.4.2.附近查询1.5.复合查询1.5.1.相关性算分1.5.2.算分函数查询1)语法说明2)示例3)小结1.5.3.Boolean Query布尔查询1)语法示例:2)示例3)小结2.搜索结果处理2.1.排序2.1.1.普通字段排序2.1.
2022-05-28 18:38:14
2076
原创 分布式搜索引擎ElasticSearch基本命令学习
文章目录1.初识elasticsearch1.1.了解ES1.1.1.elasticsearch的作用1.1.2.ELK技术栈1.1.3.elasticsearch和lucene1.1.4.为什么不是其他搜索技术?1.1.5.总结1.2.倒排索引1.2.1.正向索引1.2.2.倒排索引1.2.3.正向和倒排1.3.es的一些概念1.3.1.文档和字段1.3.2.索引和映射1.3.3.mysql与elasticsearch1.4.安装es、kibana1.4.1.安装1.4.2.分词器1.4.3.总结2.索引
2022-05-28 18:37:00
237
原创 RabbitMQ集群部署指南
文章目录1.单机部署1.1.下载镜像1.2.安装MQ2.安装DelayExchange插件2.1.下载插件2.2.上传插件2.3.安装插件3.集群部署2.1.集群分类2.2.获取cookie2.3.准备集群配置2.4.启动集群2.5.测试2.5.1.数据共享测试2.5.2.可用性测试4.镜像模式4.1.镜像模式的特征4.2.镜像模式的配置4.2.1.exactly模式4.2.2.all模式4.2.3.nodes模式4.3.测试4.3.1.测试数据共享4.3.2.测试高可用5.仲裁队列5.1.添加仲裁队列5.
2022-05-28 18:35:27
1680
原创 RabbitMQ基本命令学习
RabbitMQ笔记是黑马张老师Cloud课的笔记,黑马的视频讲的真的太棒了!!不得不感慨一句:0基础、学IT … 😘😘😘😘视频地址:https://www.bilibili.com/video/BV1LQ4y127n4?p=158&spm_id_from=pageDriver1.初识MQ1.1.同步和异步通讯微服务间通讯有同步和异步两种方式:同步通讯:就像打电话,需要实时响应。异步通讯:就像发邮件,不需要马上回复。两种方式各有优劣,打电话可以立即得到响应,但是你却不能跟多个人同时
2022-05-28 18:31:11
523
原创 Docker基础学习笔记(docker常用命令&DockerCompose使用)
文章目录1.初识Docker1.1.什么是Docker1.1.1.应用部署的环境问题1.1.2.Docker解决依赖兼容问题1.1.3.Docker解决操作系统环境差异1.1.4.小结1.2.Docker和虚拟机的区别1.3.Docker架构1.3.1.镜像和容器1.3.2.DockerHub1.3.3.Docker架构1.3.4.小结1.4.安装Docker2.Docker的基本操作2.1.镜像操作2.1.1.镜像名称2.1.2.镜像命令2.1.3.案例1-拉取、查看镜像2.1.4.案例2-保存、导入镜像
2022-05-28 18:28:26
388
转载 Nacos安装指南
文章目录1.Windows安装1.1.下载安装包1.2.解压1.3.端口配置1.4.启动1.5.访问2.Linux安装2.1.安装JDK2.2.上传安装包2.3.解压2.4.端口配置2.5.启动3. docker安装4.Nacos的依赖1.Windows安装开发阶段采用单机安装即可。1.1.下载安装包在Nacos的GitHub页面,提供有下载链接,可以下载编译好的Nacos服务端或者源代码:GitHub主页:https://github.com/alibaba/nacosGitHub的Relea
2022-05-28 18:27:25
549
原创 nacos学习二,SpringCloud整合nacos、feign、gateway
文章目录1.Nacos配置管理1.1.统一配置管理1.1.1.在nacos中添加配置文件1.1.2.从微服务拉取配置1.2.配置热更新1.2.1.方式一1.2.2.方式二(推荐)1.3.配置共享1)添加一个环境共享配置2)在user-service中读取共享配置3)运行两个UserApplication,使用不同的profile4)配置共享的优先级1.4.搭建Nacos集群2.Feign远程调用2.1.Feign替代RestTemplate1)引入依赖2)添加注解3)编写Feign的客户端4)测试5)总结2
2022-05-28 18:21:04
877
原创 eureka&nacos学习一
文章目录1.认识微服务1.0.学习目标1.1.单体架构1.2.分布式架构1.3.微服务1.4.SpringCloud1.5.总结2.服务拆分和远程调用2.1.服务拆分原则2.2.服务拆分示例2.2.1.导入Sql语句2.2.2.导入demo工程2.3.实现远程调用案例2.3.1.案例需求:2.3.2.注册RestTemplate2.3.3.实现远程调用2.4.提供者与消费者3.Eureka注册中心3.1.Eureka的结构和作用3.2.搭建eureka-server3.2.1.创建eureka-server
2022-05-28 18:20:08
345
原创 压测工具——Jmeter快速入门
1.安装JmeterJmeter依赖于JDK,所以必须确保当前计算机上已经安装了JDK,并且配置了环境变量。1.1.下载可以Apache Jmeter官网下载,地址:http://jmeter.apache.org/download_jmeter.cgi1.2.解压因为下载的是zip包,解压缩即可使用,目录结构如下:其中的bin目录就是执行的脚本,其中包含启动脚本:1.3.运行双击即可运行,但是有两点注意:启动速度比较慢,要耐心等待启动后黑窗口不能关闭,否则Jmeter也跟着关闭
2022-05-23 11:29:23
191
原创 zookeeper操作封装——curator使用&分布式锁使用
文章目录1. 基本操作1.1 建立连接1.2 建立结点1.3 查询结点查询数据查询子结点查看结点信息1.4 修改结点普通修改带乐观锁的修改1.5 删除删除单个结点删除带子结点的结点必须成功的删除带回调函数的删除2. 监听器事件2.1 NodeCache单一结点连续监听2.2 PathChildrenCache监听子结点2.3 TreeCache监听当前结点+子结点3. Curator 分布式锁3.1 zookeeper分布式原理3.2 Curator 封装的五种分布式锁3.3 模拟12306卖票实现可重入锁
2022-05-19 23:11:03
945
原创 解决nacos集群启动一闪而过的问题&nacos集群搭建
Nacos集群搭建最近在windows本机上通过不同端口号搭建3台Nacos集群,发现启动了两台之后第三台总是闪退,后面一看startup.cmd启动文件,好家伙,在68行set "NACOS_JVM_OPTS=-server -Xms2g -Xmx2g -Xmn1g解释一下这几个常用的虚拟机参数-Xms2g:设置JVM促使内存为2g.此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存.-Xmx2g:设置JVM最大可用内存为2g-Xmn1g:设置年轻代大小为1G.整个堆大小
2022-05-15 11:04:38
1723
原创 指令重排序测试&volatile原理学习
文章目录1. 从CPU层面理解指令重排序1.1 鱼罐头加工的故事1.2 指令重排序优化1.3 支持流水线的处理器1.4 指令重排序导致的异常2. volatile原理2.1 保证可见性2.2 保证有序性2.3 指令交错2.4 double-checked locking 问题2.5 double-checked locking 解决2.6 happens-before3. final3.1 设置 final 变量的原理3.2 获取 final 变量的原理附录:流水线期末考试计算大题流水线技术(必考流水线的相
2022-05-14 10:26:20
600
1
原创 Java中的各种锁&显示锁ReentrantLock和AQS学习(深入源码)
文章目录1. 锁的类型&锁的分类1.1 乐观锁1.2 悲观锁1.3 自旋锁1.4 可重入锁(递归锁)1.5 读写锁1.6 公平锁1.7 非公平锁1.8 共享锁1.9 独占锁1.10 重量级锁1.11 轻量级锁1.12 偏向锁1.13 分段锁1.14 互斥锁1.15 同步锁1.16 死锁、活锁、饥饿1.17 锁粗化1.18 锁消除1.19 synchronized1.20 Lock和synchronized的区别1.21 ReentrantLock 和synchronized的区别2. 显示锁Reen
2022-05-14 10:20:47
536
原创 单例模式面试题
单例模式面试题单例模式有很多实现方法,饿汉、懒汉、静态内部类、枚举类,试分析每种实现下获取单例对象(即调用 getInstance)时的线程安全,并思考注释中的问题饿汉式:类加载就会导致该单实例对象被创建懒汉式:类加载不会导致该单实例对象被创建,而是首次使用该对象时才会创建1. 懒汉式// 问题1:为什么加 final// 问题2:如果实现了序列化接口, 还要做什么来防止反序列化破坏单例public final class Singleton implements Serializab
2022-05-13 20:42:04
2107
2
原创 死锁、活锁、饥饿&定位死锁&解决死锁
文章目录1. 死锁2. 定位死锁2.1 jstack工具使用2.2 jconsole工具使用:3. 解决死锁3.1 哲学家就餐问题4. 活锁4.1 活锁原因4.2 活锁解决5. 饥饿6. 使用ReentrantLock解决死锁、活锁、饥饿6.1 解决哲学家就餐死锁问题1. 死锁死锁:一组互相竞争资源的线程因互相等待,导致“永久”阻塞的现象。说白了就是:两个线程互相持有对方所需的资源,互不释放且互相等待t1 线程获得A对象锁,接下来想获取B对象的锁t2 线程获得B对象锁,接下来想获取A对象的锁
2022-05-10 22:48:21
931
原创 docker安装zookeeper&zookeeper基本使用(非常详细)
文章目录1. docker安装zookeeper2. zookeeper基本使用(Linux)新增结点查看命令修改命令删除命令其他命令3. zookeeper ACL(Linux)ACL 命令行ACL 构成ACL 特性world授权模式ip授权模式auth模式digest授权模式4. IDEA操作Zookeeper连接zookeeper创建结点创建无序持久结点常见有序持久结点创建auth模式结点查看信息删除结点设置监视器简介:zookeeper是经典的分布式数据一致性解决方案,致力于为分布式应用提供一个
2022-05-10 21:27:25
8582
原创 一文详解云原生DevOps(认识、熟悉、上手,DevOps,Docker,Jenkins,SonarQube,Harbor)
文章目录一、DevOps介绍二、Code阶段工具2.1 Git安装2.2 GitLab安装三、Build阶段工具四、Operate阶段工具4.1 Docker安装4.2 Docker-Compose安装五、Integrate工具5.1 Jenkins介绍5.2 Jenkins安装5.3 Jenkins入门配置5.3.1 构建任务5.3.1 配置源码拉取地址5.3.2 配置Maven构建代码5.3.3 配置Publish发布&远程操作六、CI、CD入门操作6.1 持续集成6.2 持续交付、部署七、集成
2022-05-09 14:30:45
1384
原创 Monitor工作原理&synchronized锁膨胀过程及其优化
文章目录1. Java对象头2. Monitor(锁)3. 从字节码层面分析Monitor4. synchronized——轻量级锁5. synchronized——锁膨胀6. synchronized——自旋优化7. synchronized——偏向锁7.1 偏向状态7.2 撤销 - 调用对象 hashCode7.3 撤销 - 其它线程使用对象7.4 撤销 - 调用 wait/notify7.5 批量重偏向7.6 批量撤销8. synchronized——锁消除9. synchronized——锁粗化详
2022-05-06 20:19:12
666
原创 锐捷交换机忘记密码解决方案:恢复出厂设置、重置配置文件
最近学校实验室到了一批学校淘汰下来的交换机,但是没有给密码,只能重置密码了,交换机型号为S2126G锐捷官网手册:https://www.ruijie.com.cn/fw/wd/2905/首先连接好交换机,可以在设备管理器中看连接状态:这里我们用xshell连接交换机然后先连接一次,当显示连接之后关闭交换机电源再打开进行重启,电源打开后要迅速按ESC键,之后就会进入重置配置进入界面,删除原来的配置文件3700519)]...
2022-05-06 18:42:40
20456
原创 编写Java代码打印Hadoop中DataNode中的数据
文章目录1. 使用idea远程访问2. 在Linux本地上执行Java脚本前段时间老师布置了一个使用java代码打印hadoop中DataNode里数据的作业,起初不太熟悉在Linux里Java导包的步骤,来来回回花了很多时间去试错,最后终于弄好了,写篇博客记录一下我的目标是使用idea远程打印和在Linux中本地打印DataNode里面的数据:首先我们要知道的是Hadoop其实提供了很多端口供我们访问,我们可以通过特定的端口管理Hadoop中的很多组件,例如NameNode、DataNode、
2022-05-03 15:33:22
1916
1
原创 Unsafe类调用及自定义Atomic原子类
文章目录1. Unsafe类调用2. 自定义Atomic原子类思维导图:unsafe类功能及使用请看:https://www.jianshu.com/p/db8dce09232dJava和C++语言的一个重要区别就是Java中我们无法直接操作一块内存区域,不能像C++中那样可以自己申请内存和释放内存。Java中的Unsafe类为我们提供了类似C++手动管理内存的能力。Unsafe类,全限定名是sun.misc.Unsafe,从名字中我们可以看出来这个类对普通程序员来说是“危险”的,一般应用开发者不
2022-05-02 19:09:16
1145
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅