
java工具篇
文章平均质量分 83
java插件包含开发过程使用的工具
拽着尾巴的鱼儿
The harder you work, the luckier you are
展开
-
工具篇--Idea-常用汇总(持续更新)
本文对工作中idea 中常用的一些功能进行总结。本文是在本地已经安装git 和git hub desktop的基础上进行的。本文对idea 使用过程用到的工具进行汇总,后续会不断进行更新。原创 2024-12-06 16:41:24 · 1472 阅读 · 0 评论 -
工具篇:IDEA VFS 损害启动报错 com.intellij.util.io.CorruptedException 处理
IntelliJ IDEA 报错 com.intellij.util.io.CorruptedException 通常表明 IntelliJ IDEA 的文件系统缓存(VFS, Virtual File System)出现了损坏。这种情况可能是由于 IDE 在关闭或运行时遇到了意外终止(如系统崩溃、强制关闭等)导致的。本文对IDEA VFS 损害启动报错 com.intellij.util.io.CorruptedException 处理。原创 2024-12-06 16:38:26 · 1193 阅读 · 0 评论 -
工具篇--GitHub Desktop 使用
GitHub Desktop 是git 官网提供的可视化软件,用于代码的拉取和上传。本文对 GitHub Desktop的使用进行整理。原创 2024-12-06 16:38:07 · 1257 阅读 · 0 评论 -
面试篇-Java-5+设计模式
你在项目开发中都用到过什么设计模式,你是在哪些场景下使用的。本文重点对面试的问题进行介绍,祝愿每位程序员都能顺利上岸!!!责任链模式:为了避免请求发送者与多个请求处理者耦合在一起,将所有请求的处理者通过前一对象记住其下一个对象的引用而连成一条链;当有请求发生时,可将请求沿着这条链传递,直到有对象处理它为止。责任链模式的角色抽象处理者(Handler)角色:定义一个处理请求的接口,包含抽象处理方法和一个后继连接。原创 2024-07-12 14:09:42 · 875 阅读 · 0 评论 -
面试篇-Java-4+jvm垃圾回收+jvm 调优
你知道什么对象会被称只为垃圾对象,垃圾对象又是怎么进行回收的。本文重点对面试的问题进行介绍,祝愿每位程序员都能顺利上岸!!!本文档对JVM 的垃圾对象确定,以及垃圾回收算法,垃圾回收器,jvm 的调优 面试题进行总结。原创 2024-07-12 14:09:28 · 973 阅读 · 0 评论 -
面试篇-Java-3+类加载+JVM 内存划分
你知道类的加载过程吗,你了解过jvm 吗。本文重点对面试的问题进行介绍,祝愿每位程序员都能顺利上岸!!!本文对jvm 类加载,以及jvm 内存结构常见面试题进行汇总。原创 2024-07-12 14:09:06 · 985 阅读 · 0 评论 -
面试篇-Java-2+线程池+ThreadLocal
你们项目中使用过线程池吗,它的工作过程是怎样的;你了解过ThreadLocal吗,你知道它的底层原理吗。本文重点对面试的问题进行介绍,祝愿每位程序员都能顺利上岸!!!项目中我们通过 ThreadPoolExecutor 来定义一个线程池,进行任务的提交;固定线程数的线程池单线程化的线程池,它只会用唯一的工作线程来执行任 务,保证所有任务按照指定顺序(FIFO)执行.按需分配的线程池以一定的频率进行任务调度的线程池。原创 2024-07-12 14:08:33 · 884 阅读 · 0 评论 -
面试篇-Mysql-3+集群+分库分表
你知道Mysql 的集群吗,你了解主从复制的过程吗,当海量数据出现你们是怎么处理的。本文重点对面试的问题进行介绍,祝愿每位程序员都能上岸!!!本文对Mysql 集群,及分库分表的一些面试问题进行了梳理。原创 2024-07-12 14:07:21 · 986 阅读 · 0 评论 -
面试篇-Mysql-2+事务隔离级别的实现
你知道Mysql 的事务,事务底层的实现原理你知道吗,Spring 是怎么支持事务的。本文重点对面试的问题进行介绍,祝愿每位程序员都能上岸!!!其中mvcc的意思是多版本并发控制。指维护一个数据的多个版本,使得读写操作没有冲突,它的底层实现主要是分为了三个部分,第一个是隐藏字段,第二个是undolog日志,第三个是readView读视图;隐藏字段是指:在mysgl!中给每个表都设置了隐藏字段,有一个是tx_id(事务id),记录每一次操作的事务id,是自增的;原创 2024-07-12 14:06:54 · 1061 阅读 · 0 评论 -
面试篇-Redis-3+分布式锁+集群部署
你们项目中使用过Redis 作为分布式锁吗,你们是怎么实现的,锁过期怎么办,redis 脑裂怎么办,Redis 真能保证一致性吗,本文重点对面试的问题进行介绍,祝愿每位程序员都能上岸!!!。本文对Redis 的主从,哨兵,分片三种集群部署进行介绍,并对Redis 分布式锁的使用问题进行概括。原创 2024-07-04 18:43:16 · 953 阅读 · 0 评论 -
面试篇-Redis-2+持久化+过期key删除+内存淘汰
本文对Redis Rdb和Aof 的持久化,及过期key 和内存淘汰进行介绍,重点对面试的问题进行介绍,祝愿每位程序员都能上岸!!!使用allkeys-lru(挑选最近最少使用的数据淘汰)淘汰策略,留下来的都是经常访问的热点数据;本文对Redis 的两种持久化,及过期key 删除和内存淘汰进行总结。原创 2024-07-04 18:41:57 · 898 阅读 · 0 评论 -
面试篇-Redis-1缓存三兄弟+数据一致性
本文对Redis的使用场景及使用过程中遇到的问题进行总结,重点对面试的问题进行介绍,祝愿每位程序员都能上岸!!!本位对Redis 常见的缓存穿透,缓存击穿,缓存雪崩,数据库和缓存数据一致性进行总结。原创 2024-07-04 18:40:34 · 1350 阅读 · 0 评论 -
CP模型--Raft协议介绍
本文对分布式系统下,强一致性模型(cp)之Raft 算法的实现进行介绍。raft 通过投票(过半)当选为leader 节点,只有leader 节点负责对客户端的数据写入操作;leader 在接收到数据之后,现在本地记录日志,然后将日志信息跟随心跳一起发送到集群内的从节点,从节点完成日志数据记录后,返回leader,只有过半的从节点都写入日志成功,则进行数据提交(数据真正的写入成功),否则 进行数据的回滚;当心跳超时时则会重新触发leader 的选举。原创 2024-05-13 15:37:04 · 959 阅读 · 0 评论 -
源码篇--Nacos服务--中章(8):Nacos服务端感知客户端实例变更(集群数据校验)-4
本文对Nacos 集群节点间实例数据校验过程进行介绍,服务端版本 3.0.13。本文对集群内节点间的心跳监测,以及实例信息的检查和同步做介绍。原创 2024-04-29 14:27:26 · 738 阅读 · 0 评论 -
源码篇--Nacos服务--中章(8):Nacos服务端感知客户端实例变更-3
Nacos 集群中的节点通过distro 协议,grpc 通信互相同步节点中的实例信息;本文对服务端实例同步的3种场景进行介绍;服务端版本 3.0.13。本文对Nacos 集群内实例注册的感知,对实例的注册;Nacos 集群节点启动,实例信息的同步进行介绍。原创 2024-04-29 14:26:41 · 1009 阅读 · 0 评论 -
源码篇--Nacos服务--中章(8):Nacos服务端感知客户端注册-2
当客户端的实例注册到nacos 集群中某一台节点后,此时需要给集群中其它的节点推送节点注册实例信息,从而保证数据的最终一致性协议。集群的节点之间通过建立grpc 连接实现消息的发送,本文对服务端nacos 集群间节点grpc 连接建立,进行介绍,服务端版本 3.0.13。本文对集群内节点之间通过建立grpc 连接过程进行介绍。原创 2024-04-29 14:25:09 · 502 阅读 · 0 评论 -
源码篇--Nacos服务--中章(8):Nacos服务端感知客户端注册-1
本文对Nacos 服务端对客户端的注册实例请求过程进行阐述,服务端版本 3.0.13。本文对Nacos 服务端对客户端的注册实例请求过程进行阐述。原创 2024-04-29 14:24:23 · 475 阅读 · 0 评论 -
工具篇--Window--常用工具&命令汇总(持续更新)
本文对window 环境下常用的工具进行整理。本文对工具篇–Window–常用工具&命令进行汇总。原创 2024-04-29 14:22:05 · 1414 阅读 · 0 评论 -
源码篇--Nacos服务--中章(6):Nacos客户端启动-grpc通道建立&客户端服务信息获取(故障转移)细节
在源码篇–Nacos服务–中章(5) 对nacos 客户端的创建及grpc 连接的建立,心跳检查,实例注册进行了介绍;本文对grpc通道建立&客户端服务信息获取(故障转移)细节进行介绍。本文对客户端服务信息获取的故障转移细节,及客户端同服务端的grpc 连接建立进行介绍。原创 2024-04-24 10:21:26 · 1386 阅读 · 0 评论 -
源码篇--Nacos服务--中章(5):Nacos客户端启动-实例注册-grpc连接建立
本文对Nacos 客户端启动时,同服务端建立长连接的过程进行介绍。环境:客户端版本2.2.1,服务端版本 3.0.13;客户端在启动成功之后发布 WebServiceInitializedEvent 事件,nacos 客户端同服务端创建通信通道,发送nacos 服务端的服务检查请求,正常返回后得到通道的id,创建双向流 grpc 的通信存根,发送连接确定建立的请求后;发起客户端实例的注册请求到nacos 服务端进行注册。原创 2024-04-24 10:20:53 · 1257 阅读 · 0 评论 -
源码篇--Nacos服务--中章(4):Nacos服务端启动--事件发布&订阅
本文对Nacos 中事件的发布和订阅进行介绍。Nacos 事件发布&订阅 本身就是一个生产者和消费者的模型,Nacos 将事件分成了两类,常规事件 和 慢事件,常规事件:每种事件类型都对应自己的一个 默认事件发布器对象 队列大小为128,通过set 集合存放消费改事件的消费者;慢事件:都使用共享事件发布器, 队列大小为1024,使用map 集合存放消费改事件的消费者 key: 包名+类名的 topIc, value 为set 集合存放消费改事件的消费者;原创 2024-04-23 09:30:24 · 791 阅读 · 0 评论 -
源码篇--Nacos服务--中章(3):Nacos服务端启动--端口监听
本文对Nacos 服务端的端口监听进行介绍。在 Nacos 中,BaseRpcServer 是一个基础的远程过程调用(RPC)服务器组件,用于处理 Nacos 集群内部节点之间的远程通信和调用。其主要作用包括:提供远程服务调用接口:BaseRpcServer 作为一个 RPC 服务器,提供了远程服务调用的接口,使得集群中的各个节点能够通过网络进行相互调用。通过 BaseRpcServer,节点之间可以实现远程调用服务的功能。原创 2024-04-23 09:29:53 · 1267 阅读 · 0 评论 -
源码篇--Nacos服务--中章(2):Nacos服务端启动--集群寻址
源码篇–Nacos服务–中章(1):Nacos服务端的启动;本文对Naoc 集群的寻址进行介绍;本文对 Nacos服务端启动–集群/单机寻址方式进行介绍。原创 2024-04-19 16:54:58 · 1286 阅读 · 0 评论 -
源码篇--Nacos服务--中章(1):Nacos服务端的启动
在源码篇–Nacos服务–前章我们对nacos 的架构及其概念进行了介绍,本文从源码层面对nacos 服务端资源的加载进行介绍;@Override// 自定义的环境变量 设置本文从源码层面对nacos 服务端资源的加载进行介绍。原创 2024-04-19 16:53:23 · 1724 阅读 · 0 评论 -
源码篇--Nacos服务--前章
在阿里云轻量服务器–Docker–nacos 集群部署中我们了解了怎么搭建一个nacos集群;在工具篇–Nacos 源码启动 & jmenv.tbsite.net 错误分析,我们了解了nacos 源码的启动;在框架篇–springboot 客户端 整合& Nacos 版本问题我们了解了 怎么整合到springboot 中;在Idea+maven+spring-cloud项目搭建系列–3整合Nacos中我们可以了解cloud的整合和使用;本文对Nacos 的架构及相关概念进行介绍;原创 2024-03-29 09:03:24 · 825 阅读 · 0 评论 -
JAVA数据篇-队列Queue使用
在 Java 中,队列(Queue)是一种用于存储和管理元素的线性数据结构,遵循先进先出(FIFO)的原则,即最先进入队列的元素最先被取出。Java 中提供了多种队列的实现类,常用的包括 LinkedList、ArrayDeque 和 PriorityBlockingQueue 等。。Java 中的队列 (Queue) 是一种先进先出 (FIFO) 的数据结构,用于存储元素并按照它们被添加的顺序进行访问。原创 2024-03-29 09:00:46 · 2020 阅读 · 0 评论 -
工具篇--Nacos 源码启动 & jmenv.tbsite.net 错误分析
本文对nacos 源码启动 报 Unable to start embedded Tomcat ,报错原因及解决办法进行介绍;如果想直接看结果可以直接到。本文环境 nacos :2.4.0;Nacos 是一个开源的服务发现、配置管理和服务管理平台,旨在帮助开发人员构建和维护微服务架构的应用。Nacos 的功能包括:服务发现和注册、配置管理、动态 DNS 服务以及服务健康监测。服务发现与注册:Nacos 提供了服务发现和注册功能,使得微服务应用能够灵活地注册和发现其他服务实例。原创 2024-03-25 16:22:47 · 6572 阅读 · 1 评论 -
框架篇--springboot 客户端 整合& Nacos 版本问题
本文对 pringboot 客户端 整合Nacos 过程中出现的版本问题 进行记录;本文对 pringboot 客户端 整合Nacos 过程中出现的版本问题 进行记录;原创 2024-03-20 15:23:20 · 3510 阅读 · 0 评论 -
阿里云轻量服务器--Docker--nacos 集群部署
本文对介绍通过docker 部署nacos 集群。本文环境linux centos7;本文对介绍通过docker 部署nacos 集。原创 2024-03-20 15:22:20 · 1444 阅读 · 0 评论 -
工具篇--分布式定时任务 Xxl-job 与 ElasticJob的对比
本文对分布式调度任务 Xxl-job 与 ElasticJob的对比 进行介绍。综合来看,Xxl-job 更适合于在 Spring 生态圈中使用的项目,提供了简洁易用的任务管理界面;而 ElasticJob 则更加灵活,功能更为丰富,适用范围更广泛,可以满足复杂的分布式定时任务需求。原创 2024-03-14 20:52:41 · 1527 阅读 · 0 评论 -
工具篇-- idea 获取vpn 资源 timeOut 问题 探讨
本文探讨 idea 无法访问到 ,vpn 受限的资源,以及可能的解决办法;本文探讨 idea 无法访问到 ,vpn 受限的资源,以及可能的解决办法;原创 2024-03-13 17:33:26 · 3068 阅读 · 0 评论 -
工具篇--分布式定时任务springBoot--elasticjob ElasticJobListener 的加载
本文对 定义的SPI 监听器 加载实现做介绍。在 Spring Boot 中,SPI(Service Provider Interface)是一种机制,用于实现组件化和扩展性。SPI机制允许开发者在运行时动态地加载并执行接口的实现类,从而降低耦合、增强可扩展性,并使应用程序更容易扩展和定制。定义接口:首先,您需要定义一个接口,该接口包含需要被实现的方法。这个接口定义了一组可扩展的功能或服务点。实现接口:然后,您可以创建一个或多个实现了该接口的类。这些类将提供接口定义的功能,并作为可插拔的组件。原创 2024-03-13 17:32:56 · 1134 阅读 · 0 评论 -
Spring-boot Mybatis-plus 实战应用
Spring-boot 项目中引入了Mybatis-plus 后 应该怎样进行数据源的配置,怎样通过Mybatis-plus 的接口快速的实现CRUD。定义id 生成:(分布式全局唯一id 的设置可以参考我博客中的其他文章 搜索关键字"分布式全局唯一id" 查看)@Component@Override//可以将当前传入的class全类名来作为bizKey,或者提取参数来生成bizKey进行分布式Id调用生成.//根据bizKey调用分布式ID生成//返回生成的id值即可.return id;原创 2023-11-14 10:19:43 · 263 阅读 · 0 评论 -
工具篇--分布式定时任务springBoot 整合 elasticjob使用(3)
本文对springBoot 整合 elasticjob 进行介绍。本文环境 jdk:1.8;// 分片参数 0=text,1=image,2=radio,3=vedio String shardingParameter = shardingContext . getShardingParameter();原创 2024-03-12 21:15:04 · 1908 阅读 · 1 评论 -
工具篇--分布式定时任务springBoot--elasticjob使用--工作流程(2)
本文对elasticjob 的工作流程介绍;ElasticJob 定位为轻量级无中心化解决方案,使用 jar 的形式提供分布式任务的协调服务。app1,app2 表示不同的服务系统,每个系统都可以 引入elasticjob-lite-core jar 进行定时任务的执行;elasticjob-lite-core 内部包括,任务执行实例的注册,leader 的选举,任务的调度;在任务调度过程中可以将日志进行保存到 数据库中;ELK 可以对保存到数据库中的日志进行分析;原创 2024-03-12 21:14:21 · 1342 阅读 · 0 评论 -
工具篇--分布式定时任务springBoot--elasticjob简单使用(1)
本文对 elasticjob 的简单使用进行介绍。ElasticJob 是一个分布式任务调度框架,由当当网开发并开源。它基于 Zookeeper 实现分布式协调,采用经典的分片算法,能够实现弹性扩容和缩容的分布式任务调度。ElasticJob 能够灵活地应用于各种环境中,如易用性、稳定性、弹性可伸缩等方面表现优异。以下是 ElasticJob 的一些主要特性:分布式任务调度:ElasticJob 基于 Zookeeper 实现分布式协调,支持分布式自动负载均衡调度。原创 2024-03-11 21:24:22 · 1726 阅读 · 0 评论 -
window Zookeeper 启动;
本文对window Zookeeper zk 启动 进行介绍;ZooKeeper 是一个开源的分布式协调服务,它提供了一个简单的接口和可靠的协调机制,可以帮助分布式系统实现高可用性和一致性。ZooKeeper 主要用于管理分布式系统中的元数据、配置信息、命名服务、分布式锁等,以协调和同步分布式系统中的各个组件。ZooKeeper 提供了分布式系统中的一致性、可靠性、主备切换等功能,帮助各个组件之间协调工作,确保系统的稳定性。可以将分布式系统中的节点命名为一个唯一的路径,并提供对这些路径的管理和查询功能。原创 2024-03-11 21:22:40 · 3239 阅读 · 0 评论 -
Springboot--整合Logback 日志框架(Maven)
在项目调试和运行中,都可能涉及到 日志的输出,本文对springboot 整合Logback 日志框架进行介绍。Logback 是一个灵活的日志框架,旨在替代传统的 Apache Log4j 框架。它是由 Ceki Gülcü 开发,并且支持 SLF4J 日志接口。:Logback 的核心模块,提供了日志事件处理和过滤的基本功能。Logger、Appender、Layout 和 Filter 等关键组件都在这个模块中定义。原创 2024-03-08 17:13:48 · 2449 阅读 · 0 评论 -
原理篇--一次定时任务的触发执行&结果返回--(终章)
之前的文章我们将xxl-job 服务端和执行端 各个类的工作内容进行了介绍,本篇文章将其串联,介绍一个任务的完整执行。本文对,一次定时任务的触发执行&结果返回的过程进行介绍。原创 2024-03-07 10:36:13 · 1919 阅读 · 0 评论 -
原理篇-- 定时任务xxl-job--任务执行-run(5)
本文对执行器端 job 的运行进行介绍。定时任务xxl-job–任务执行-run() 进行介绍。原创 2024-03-07 10:34:22 · 1499 阅读 · 0 评论