自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(261)
  • 问答 (1)
  • 收藏
  • 关注

原创 CP模型--Raft协议介绍

本文对分布式系统下,强一致性模型(cp)之Raft 算法的实现进行介绍。raft 通过投票(过半)当选为leader 节点,只有leader 节点负责对客户端的数据写入操作;leader 在接收到数据之后,现在本地记录日志,然后将日志信息跟随心跳一起发送到集群内的从节点,从节点完成日志数据记录后,返回leader,只有过半的从节点都写入日志成功,则进行数据提交(数据真正的写入成功),否则 进行数据的回滚;当心跳超时时则会重新触发leader 的选举。

2024-05-13 15:37:04 799

原创 源码篇--Nacos服务--中章(8):Nacos服务端感知客户端实例变更(集群数据校验)-4

本文对Nacos 集群节点间实例数据校验过程进行介绍,服务端版本 3.0.13。本文对集群内节点间的心跳监测,以及实例信息的检查和同步做介绍。

2024-04-29 14:27:26 538

原创 源码篇--Nacos服务--中章(8):Nacos服务端感知客户端实例变更-3

Nacos 集群中的节点通过distro 协议,grpc 通信互相同步节点中的实例信息;本文对服务端实例同步的3种场景进行介绍;服务端版本 3.0.13。本文对Nacos 集群内实例注册的感知,对实例的注册;Nacos 集群节点启动,实例信息的同步进行介绍。

2024-04-29 14:26:41 833

原创 源码篇--Nacos服务--中章(8):Nacos服务端感知客户端注册-2

当客户端的实例注册到nacos 集群中某一台节点后,此时需要给集群中其它的节点推送节点注册实例信息,从而保证数据的最终一致性协议。集群的节点之间通过建立grpc 连接实现消息的发送,本文对服务端nacos 集群间节点grpc 连接建立,进行介绍,服务端版本 3.0.13。本文对集群内节点之间通过建立grpc 连接过程进行介绍。

2024-04-29 14:25:09 402

原创 源码篇--Nacos服务--中章(8):Nacos服务端感知客户端注册-1

本文对Nacos 服务端对客户端的注册实例请求过程进行阐述,服务端版本 3.0.13。本文对Nacos 服务端对客户端的注册实例请求过程进行阐述。

2024-04-29 14:24:23 272

原创 源码篇--Nacos服务--中章(7):Nacos客户端重连的4中场景

本文对 nacos 客户端的重新连接nacos 服务端的4中场景进行介绍,环境:客户端版本2.2.1,客户端将springboot 3.0.13。本文对Nacos客户端重连的4中场景和服务端的处理进行介绍。

2024-04-29 14:22:59 576

原创 工具篇--Window--常用工具&命令汇总(持续更新)

本文对window 环境下常用的工具进行整理。本文对工具篇–Window–常用工具&命令进行汇总。

2024-04-29 14:22:05 1004

原创 源码篇--Nacos服务--中章(6):Nacos客户端启动-grpc通道建立&客户端服务信息获取(故障转移)细节

在源码篇–Nacos服务–中章(5) 对nacos 客户端的创建及grpc 连接的建立,心跳检查,实例注册进行了介绍;本文对grpc通道建立&客户端服务信息获取(故障转移)细节进行介绍。本文对客户端服务信息获取的故障转移细节,及客户端同服务端的grpc 连接建立进行介绍。

2024-04-24 10:21:26 716

原创 源码篇--Nacos服务--中章(5):Nacos客户端启动-实例注册-grpc连接建立

本文对Nacos 客户端启动时,同服务端建立长连接的过程进行介绍。环境:客户端版本2.2.1,服务端版本 3.0.13;客户端在启动成功之后发布 WebServiceInitializedEvent 事件,nacos 客户端同服务端创建通信通道,发送nacos 服务端的服务检查请求,正常返回后得到通道的id,创建双向流 grpc 的通信存根,发送连接确定建立的请求后;发起客户端实例的注册请求到nacos 服务端进行注册。

2024-04-24 10:20:53 735

原创 源码篇--Nacos服务--中章(4):Nacos服务端启动--事件发布&订阅

本文对Nacos 中事件的发布和订阅进行介绍。Nacos 事件发布&订阅 本身就是一个生产者和消费者的模型,Nacos 将事件分成了两类,常规事件 和 慢事件,常规事件:每种事件类型都对应自己的一个 默认事件发布器对象 队列大小为128,通过set 集合存放消费改事件的消费者;慢事件:都使用共享事件发布器, 队列大小为1024,使用map 集合存放消费改事件的消费者 key: 包名+类名的 topIc, value 为set 集合存放消费改事件的消费者;

2024-04-23 09:30:24 507

原创 源码篇--Nacos服务--中章(3):Nacos服务端启动--端口监听

本文对Nacos 服务端的端口监听进行介绍。在 Nacos 中,BaseRpcServer 是一个基础的远程过程调用(RPC)服务器组件,用于处理 Nacos 集群内部节点之间的远程通信和调用。其主要作用包括:提供远程服务调用接口:BaseRpcServer 作为一个 RPC 服务器,提供了远程服务调用的接口,使得集群中的各个节点能够通过网络进行相互调用。通过 BaseRpcServer,节点之间可以实现远程调用服务的功能。

2024-04-23 09:29:53 934

原创 源码篇--Nacos服务--中章(2):Nacos服务端启动--集群寻址

源码篇–Nacos服务–中章(1):Nacos服务端的启动;本文对Naoc 集群的寻址进行介绍;本文对 Nacos服务端启动–集群/单机寻址方式进行介绍。

2024-04-19 16:54:58 1074

原创 源码篇--Nacos服务--中章(1):Nacos服务端的启动

在源码篇–Nacos服务–前章我们对nacos 的架构及其概念进行了介绍,本文从源码层面对nacos 服务端资源的加载进行介绍;@Override// 自定义的环境变量 设置本文从源码层面对nacos 服务端资源的加载进行介绍。

2024-04-19 16:53:23 596

原创 源码篇--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 689

原创 JAVA数据篇-队列Queue使用

在 Java 中,队列(Queue)是一种用于存储和管理元素的线性数据结构,遵循先进先出(FIFO)的原则,即最先进入队列的元素最先被取出。Java 中提供了多种队列的实现类,常用的包括 LinkedList、ArrayDeque 和 PriorityBlockingQueue 等。。Java 中的队列 (Queue) 是一种先进先出 (FIFO) 的数据结构,用于存储元素并按照它们被添加的顺序进行访问。

2024-03-29 09:00:46 951

原创 工具篇--Nacos 源码启动 & jmenv.tbsite.net 错误分析

本文对nacos 源码启动 报 Unable to start embedded Tomcat ,报错原因及解决办法进行介绍;如果想直接看结果可以直接到。本文环境 nacos :2.4.0;Nacos 是一个开源的服务发现、配置管理和服务管理平台,旨在帮助开发人员构建和维护微服务架构的应用。Nacos 的功能包括:服务发现和注册、配置管理、动态 DNS 服务以及服务健康监测。服务发现与注册:Nacos 提供了服务发现和注册功能,使得微服务应用能够灵活地注册和发现其他服务实例。

2024-03-25 16:22:47 1359

原创 框架篇--springboot 客户端 整合& Nacos 版本问题

本文对 pringboot 客户端 整合Nacos 过程中出现的版本问题 进行记录;本文对 pringboot 客户端 整合Nacos 过程中出现的版本问题 进行记录;

2024-03-20 15:23:20 1287

原创 阿里云轻量服务器--Docker--nacos 集群部署

本文对介绍通过docker 部署nacos 集群。本文环境linux centos7;本文对介绍通过docker 部署nacos 集。

2024-03-20 15:22:20 1017

原创 工具篇--分布式定时任务 Xxl-job 与 ElasticJob的对比

本文对分布式调度任务 Xxl-job 与 ElasticJob的对比 进行介绍。综合来看,Xxl-job 更适合于在 Spring 生态圈中使用的项目,提供了简洁易用的任务管理界面;而 ElasticJob 则更加灵活,功能更为丰富,适用范围更广泛,可以满足复杂的分布式定时任务需求。

2024-03-14 20:52:41 965

原创 工具篇-- idea 获取vpn 资源 timeOut 问题 探讨

本文探讨 idea 无法访问到 ,vpn 受限的资源,以及可能的解决办法;本文探讨 idea 无法访问到 ,vpn 受限的资源,以及可能的解决办法;

2024-03-13 17:33:26 1494

原创 工具篇--分布式定时任务springBoot--elasticjob ElasticJobListener 的加载

本文对 定义的SPI 监听器 加载实现做介绍。在 Spring Boot 中,SPI(Service Provider Interface)是一种机制,用于实现组件化和扩展性。SPI机制允许开发者在运行时动态地加载并执行接口的实现类,从而降低耦合、增强可扩展性,并使应用程序更容易扩展和定制。定义接口:首先,您需要定义一个接口,该接口包含需要被实现的方法。这个接口定义了一组可扩展的功能或服务点。实现接口:然后,您可以创建一个或多个实现了该接口的类。这些类将提供接口定义的功能,并作为可插拔的组件。

2024-03-13 17:32:56 895

原创 工具篇--分布式定时任务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 1765 1

原创 工具篇--分布式定时任务springBoot--elasticjob使用--工作流程(2)

本文对elasticjob 的工作流程介绍;ElasticJob 定位为轻量级无中心化解决方案,使用 jar 的形式提供分布式任务的协调服务。app1,app2 表示不同的服务系统,每个系统都可以 引入elasticjob-lite-core jar 进行定时任务的执行;elasticjob-lite-core 内部包括,任务执行实例的注册,leader 的选举,任务的调度;在任务调度过程中可以将日志进行保存到 数据库中;ELK 可以对保存到数据库中的日志进行分析;

2024-03-12 21:14:21 1159

原创 工具篇--分布式定时任务springBoot--elasticjob简单使用(1)

本文对 elasticjob 的简单使用进行介绍。ElasticJob 是一个分布式任务调度框架,由当当网开发并开源。它基于 Zookeeper 实现分布式协调,采用经典的分片算法,能够实现弹性扩容和缩容的分布式任务调度。ElasticJob 能够灵活地应用于各种环境中,如易用性、稳定性、弹性可伸缩等方面表现优异。以下是 ElasticJob 的一些主要特性:分布式任务调度:ElasticJob 基于 Zookeeper 实现分布式协调,支持分布式自动负载均衡调度。

2024-03-11 21:24:22 1237

原创 window Zookeeper 启动;

本文对window Zookeeper zk 启动 进行介绍;ZooKeeper 是一个开源的分布式协调服务,它提供了一个简单的接口和可靠的协调机制,可以帮助分布式系统实现高可用性和一致性。ZooKeeper 主要用于管理分布式系统中的元数据、配置信息、命名服务、分布式锁等,以协调和同步分布式系统中的各个组件。ZooKeeper 提供了分布式系统中的一致性、可靠性、主备切换等功能,帮助各个组件之间协调工作,确保系统的稳定性。可以将分布式系统中的节点命名为一个唯一的路径,并提供对这些路径的管理和查询功能。

2024-03-11 21:22:40 1556

原创 Springboot--整合Logback 日志框架(Maven)

在项目调试和运行中,都可能涉及到 日志的输出,本文对springboot 整合Logback 日志框架进行介绍。Logback 是一个灵活的日志框架,旨在替代传统的 Apache Log4j 框架。它是由 Ceki Gülcü 开发,并且支持 SLF4J 日志接口。:Logback 的核心模块,提供了日志事件处理和过滤的基本功能。Logger、Appender、Layout 和 Filter 等关键组件都在这个模块中定义。

2024-03-08 17:13:48 1293

原创 原理篇--一次定时任务的触发执行&结果返回--(终章)

之前的文章我们将xxl-job 服务端和执行端 各个类的工作内容进行了介绍,本篇文章将其串联,介绍一个任务的完整执行。本文对,一次定时任务的触发执行&结果返回的过程进行介绍。

2024-03-07 10:36:13 1150

原创 原理篇-- 定时任务xxl-job--任务执行-run(5)

本文对执行器端 job 的运行进行介绍。定时任务xxl-job–任务执行-run() 进行介绍。

2024-03-07 10:34:22 950

原创 原理篇-- 定时任务xxl-job-执行器项目启动过程--执行器注册&任务执行(4)

本文对initEmbedServer 内容进行介绍。本文对执行器注册&任务执行 的源码内容进行介绍。

2024-03-06 14:57:10 853

原创 原理篇-- 定时任务xxl-job-执行器项目启动过程--TriggerCallbackThread 初始化(3)

本文对TriggerCallbackThread 初始的内容进行介绍。本文介绍了TriggerCallbackThread 的初始化工作,对任务的执行结果 回调给服务端,并进行相应的日志记录。

2024-03-06 14:56:38 500

原创 原理篇-- 定时任务xxl-job-执行器项目启动过程--XxlJobExecutor 初始化(2)

本文对XxlJobExecutor 初始化内容进行介绍。本文对XxlJobExecutor 初始化时 执行器的封装以及 日志清理 内容进行介绍。

2024-03-05 14:42:27 465

原创 原理篇-- 定时任务xxl-job-执行器项目启动过程(1)

本篇文章对xxl-job 执行器端启动过程进行介绍;本文对xl-job-执行器项目启动过程 进行介绍,其它初始化的工作在后续文章中进行介绍。

2024-03-05 14:41:00 1069

原创 原理篇-- 定时任务xxl-job-服务端(admin)项目执行器注册&执行器任务状态回调

在之前的章节中我们可以看到在 JobRegistryHelper 有执行器的注册和移除方法,JobCompleteHelper 有日志回调状态的更新,那么这些方法是何时被触发调用呢。本文对服务端项目执行器注册&执行器任务状态回调 调用时机进行介绍。

2024-03-04 14:44:29 503

原创 源码篇--MethodIntrospector.selectMethods 获取类中符合条件的方法

Spring 提供了MethodIntrospector 可以传入类以及筛选条件获取到符合该条件的方法集合,本文通过源码方式介绍其工作的内容。本文对MethodIntrospector.selectMethods 获取类中符合条件的方法源码内容进行介绍。

2024-03-04 14:38:52 1243

原创 原理篇-- 定时任务xxl-job-服务端(admin)项目启动过程--JobScheduleHelper初始化 (8)

本文对JobScheduleHelper 的工作内容进行介绍。本文对JobScheduleHelper 的源码内容进行介绍。

2024-03-04 14:37:12 940

原创 原理篇-- 定时任务xxl-job-服务端(admin)项目启动过程--JobLogReportHelper初始化 (7)

本文对JobLogReportHelper 内容进行介绍。本文对JobLogReportHelper 工作内容进行介绍。

2024-03-04 14:35:18 365

原创 原理篇-- 定时任务xxl-job-服务端(admin)项目启动过程--JobCompleteHelper初始化 (6)

本文对JobCompleteHelper 工作内容进行介绍。本文对JobCompleteHelper 工作内容进行介绍;

2024-03-04 14:30:42 493

原创 原理篇-- 定时任务xxl-job-服务端(admin)项目启动过程--JobFailMonitorHelper初始化 (5)

本文对JobFailMonitorHelper的工作内容进行介绍。本文对 JobFailMonitorHelper的工作内容进行介绍。

2024-03-04 14:29:24 786

原创 原理篇-- 定时任务xxl-job-服务端(admin)项目启动过程--JobRegistryHelper 初始化 (4)

本文对JobRegistryHelper 工作内容进行介绍。由于start() 方法内容较多,故拆为 2.1.1 和 2.1.2 进行介绍本文对 JobRegistryHelper 的工作内容进行介绍。

2024-03-04 14:28:51 822

原创 原理篇-- 定时任务xxl-job-服务端(admin)项目启动过程--JobTriggerPoolHelper 初始化 (3)

本文对 JobTriggerPoolHelper 的工作进行介绍;// 创建日志对象// fast/slow thread pool 快慢线程池创建 区别是线程池最大线程的数量不一样// 快速线程池 的最大线程数量 xxl.job.triggerpool.fast.max 默认值 20010,60L,@Override});// 慢速线程池 的最大线程数量 xxl.job.triggerpool.slow.max 默认值 10010,60L,@Override});

2024-03-04 13:19:41 789

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除