- 博客(62)
- 收藏
- 关注

原创 redis详解之数据备份与恢复
Redis所有数据都是保存在内存中,Redis数据备份可以定期的通过异步方式保存到磁盘上,该方式称为半持久化模式,如果每一次数据变化都写入aof文件里面,则称为全持久化模式。本章节通过配置文件,触发快照的方式,恢复数据的操作,优缺点来学习 Redis 的重点知识——数据备份与恢复。1、方式一:半持久化RDB模式(Redis DataBase)【redis备份默认方式】通过快照完成,由用户在redis.conf配置文件中设置两个参数:时间和改动的键的个数。当在指定的时间内被更改的键的个数大于指定的数值时,re
2021-06-28 09:40:20
20819
原创 Springboot 整合 DolphinScheduler(一):初识海豚调度
Apache DolphinScheduler 是一个分布式易扩展的可视化 DAG 工作流任务调度开源系统。适用于企业级场景,提供了一个可视化操作任务、工作流和全生命周期数据处理过程的解决方案。
2024-06-25 10:01:28
2459
1
原创 Springboot 整合 Flowable(二):使用 Flowable BPMN visualizer 绘制流程图
Springboot 整合 Flowable(二):使用 Flowable BPMN visualizer 绘制流程图
2024-06-11 16:45:09
877
原创 Springboot 整合 Flowable(一):使用 flowable-UI 绘制流程图
Flowable 是一个使用 Java 编写的轻量级业务流程引擎。Flowable 流程引擎可用于部署 BPMN 2.0流程定义(用于定义流程的行业XML标准), 创建这些流程定义的流程实例,进行查询,访问运行中或历史的流程实例与相关数据等等。
2024-06-11 16:34:47
4707
2
原创 Springboot 整合 Knife4j (API文档生成工具)
Knife4j是一个基于Swagger构建的开源Java API文档工具,主要包括两大核心功能:文档说明和在线调试。使用简单的配置和注解就可以节省写接口文档的时间了,舒服!
2024-03-21 17:14:47
6176
原创 Springboot 整合 Elasticsearch(五):使用RestHighLevelClient操作ES ②
Springboot 整合 Elasticsearch(四):使用RestHighLevelClient操作ES ②
2024-03-12 14:51:50
2965
2
原创 Springboot 整合 Elasticsearch(四):使用 Kibana 连接 Elasticsearch
Kibana 是通向 Elastic 产品集的窗口。 它可以在 Elasticsearch 中对数据进行视觉探索和实时分析。 之前的文章中我们使用的 elasticsearch-head 浏览器插件连接Elasticsearch 并查询数据,本次我们介绍另一种可视化查询工具——Kibana。
2024-02-29 15:26:10
1056
原创 (っ•̀ω•́)っ 如何在PPT中为文本框添加滚动条
本人在写技术分享的PPT时,遇到问题:有一大篇的代码,如何在一张PPT页面上显示?急需带有滚动条的文本框!
2024-02-21 17:08:39
2290
1
原创 Springboot 整合 Elasticsearch(三):使用RestHighLevelClient操作ES ①
Springboot 整合 Elasticsearch(三):使用RestHighLevelClient操作ES
2024-02-07 09:40:37
2543
原创 Springboot 整合 Quartz(定时任务框架)
Quartz是 OpenSymphony 开源组织在 Job scheduling 领域又一个开源项目,完全由 Java 开发,可以用来执行定时任务,类似于 java.util.Timer。持久性作业 - 就是保持调度定时的状态;作业管理 - 对调度作业进行有效的管理;
2024-01-31 15:24:54
6891
2
原创 SeaTunnel 海量数据同步工具的使用(连载中……)
SeaTunnel 是一个非常易用,高性能、支持实时流式和离线批处理的海量数据处理产品,前身是 WaterDrop (中文名:水滴),自 2021年10月12日更名为 SeaTunnel。2021年12月9日,SeaTunnel 正式通过Apache 软件基金会的投票决议,以全票通过的优秀表现正式成为 Apache 孵化器项目。2022年 3月18日社区正式发布了收个 Apache 版本 V2.1.0。
2024-01-15 19:34:17
2806
4
原创 【插播一条广告】寻找LOL游戏搭子,恕瑞玛大乱斗养老!
👻虽然是大乱斗,但还是希望技术好点,可开麦~👽工作日:19:30 - 22:30。👾评论区留言游戏昵称,互相认识~😄大家报团取暖,寻找生活的乐趣!
2023-12-29 16:53:38
527
2
原创 【SpringCloudAlibaba】Sentinel熔断限流工具的使用
随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel 是面向分布式、多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。--以上来自Sentinel官方文档;
2023-12-18 11:32:38
1337
原创 Springboot 整合 Elasticsearch(一):Linux下安装 Elasticsearch 8.x
Springboot整合Elasticsearch(一):Linux下安装 Elasticsearch 8.x
2023-06-12 16:46:43
1978
原创 Spring Validation 接口入参校验
JSR 是 Java Specification Requests 的缩写,含义为 JAVA 规范提案。JSR 303 - Bean Validation 规范, 正是一套基于 JavaBean 参数校验的标准。Hibernate Validator 是 JSR 303 的实现,它提供了 JSR 303 规范中所有约束(constraint)的实现,同时也对其作出一些拓展。
2023-06-05 15:24:09
2033
2
原创 CompletableFuture 线程编排
一、前言Java8 新特性之一,其实现了Future, CompletionStage两接口,后者是对前者的一个扩展,增加了异步回调、流式处理、多个Future组合处理的能力,使Java在处理多任务的协同工作时更加顺畅便利。
2023-05-31 16:41:06
1111
原创 关于 @Aspect 注解的使用
AOP(Aspect Oriented Programming) 是一种面向切面的编程思想。面向切面编程是将程序抽象成各个切面,即解剖对象的内部,将那些影响了多个类的公共行为抽取到一个可重用模块里,减少系统的重复代码,降低模块间的耦合度,增强代码的可操作性和可维护性。
2023-03-10 18:03:04
953
原创 InfluxDB:时序型数据库学习笔记,就这一篇吧o(╥﹏╥)o
时序数据库全称为时间序列数据库。时间序列数据库指主要用于处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。时间序列数据主要由电力行业、化工行业、气象行业、地理信息等各类型实时监测、检查与分析设备所采集、产生的数据,这些工业数据的典型特点是:产生频率快(每一个监测点一秒钟内可产生多条数据)、严重依赖于采集时间(每一条数据均要求对应唯一的时间)、测点多信息量大(常规的实时监测系统均有成千上万的监测点,监测点每秒钟都产生数据,每天产生几十GB的数据量)。
2023-03-07 11:19:40
1709
原创 Springboot 整合 WebSocket
WebSocket协议是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工(full-duplex)通信,即允许服务器主动发送信息给客户端。因此,在WebSocket中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输,客户端和服务器之间的数据交换变得更加简单。
2022-11-16 11:51:33
9249
4
原创 ThreadPool 线程池的使用
一种线程使用模式。线程过多会带来调度开销,进而影响缓存局部性和整体性能。而线程池维护着多个线程,等待着监督管理者分配可并发执行的任务。这避免了在处理短时间任务时创建与销毁线程的代价。线程池不仅能够保证内核的充分利用,还能防止过分调度。(摘抄自百度百科什么是线程池)
2022-09-15 19:58:04
2267
原创 【JAVA并发】CyclicBarrier
CyclicBarrier 从字面意思上可以翻译成循环栅栏,或者循环屏障。设立一个屏障,让一组线程都等待完成后(或都到达同一状态后),再继续下一步行动。
2022-09-08 16:58:06
216
原创 【JAVA并发】Semaphore:信号量的使用
Semaphore 也叫信号量,在 JDK1.5 被引入,主要用于在多个线程访问多个共享资源的场景下,通过协调各个线程,来保证合理的资源访问。例如数量有限的餐厅桌椅,银行业务办理窗口等。
2022-09-08 15:24:50
1766
原创 【JAVA并发】CountDownLatch
CountDownLatch 定义了一个计数器,和一个阻塞队列, 当计数器的值递减为 0 之前,阻塞队列里面的线程处于挂起状态,当计数器递减到 0 时会唤醒阻塞队列所有线程,这里的计数器是一个标志,可以表示一个任务一个线程,也可以表示一个倒计时器,CountDownLatch 可以解决那些一个或者多个线程在执行之前必须依赖于某些必要的前提业务先执行的场景,例如主线程要等待所有子线程执行完再执行,老师要等待所有考生都交卷再离开考场……
2022-09-08 10:31:57
443
原创 ExpiringMap:轻量级的Java缓存方式
一、ExpiringMap具有高性能、低开销、零依赖、线程安全、使用 ConcurrentMap 的实现过期 entries 等优点。其主要特点包括:过期策略、可变有效期、最大尺寸、侦听器过期、延迟输入加载、过期自省等。
2022-09-07 15:04:08
3551
1
原创 Java设计模式:策略模式
策略模式是一种行为型模式,它将对象和行为分开,将行为定义为一个行为接口和具体行为的实现。策略模式最大的特点是行为的变化,行为之间可以相互替换。每个if判断都可以理解为就是一个策略。本模式使得算法可独立于使用它的用户而变化。UML结构图如下:环境/上下文 (Context):持有一个策略类的引用,最终给客户端调用。抽象策略 (Strategy): 策略类,通常是一个接口或者抽象类。具体策略 (ConcreteStrategy):实现了策略类中的策略方法,封装相关的算法和行为。
2022-08-25 16:10:21
1112
3
原创 【JAVA并发】CAS(第二弹)
上文说到,CAS在更新值的时候,会判断要修改的A 是否和预期值相同,如果相同则更新新值。但会存在一种情况:线程 t2 在 t1 写回前,已经读取 A,修改成了 B,又修改成了 A,再写回时,满足要修改的值和预期值相同,更新成功。整个过程 t1 是无法知道的, t1 在更新时也能成功;而之后 t2 如果还想用 A,就读取不到了,因为已经是 t1 修改后的 B,这就造成了数据不一致的问题。产生ABA问题的代码示例:目前在 JDK 的 atomic 包里提供了一个类 AtomicStampedReferen
2022-08-19 16:53:04
188
webSocket.html
2022-11-15
influxDB V2.3.0 镜像包
2022-10-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人