- 博客(26)
- 收藏
- 关注
原创 深入剖析Spring Boot依赖注入顺序:从原理到实战
SpringBoot依赖注入顺序解析:本文详细剖析了SpringBoot中Bean的完整生命周期和依赖注入过程。关键步骤包括:1)Bean定义加载;2)实例化阶段(静态块、实例字段、构造器);3)依赖注入阶段(字段注入、Setter注入);4)初始化后阶段(@PostConstruct、InitializingBean接口)。重点指出:构造器中不能使用依赖Bean,@PostConstruct方法才是安全使用注入依赖的时机。理解这个顺序可避免"Bean注入null"等问题,并设计出更健壮
2025-09-25 11:44:26
519
原创 Elasticsearch分词器详解
在Elasticsearch中,分词器(Analyzer)是文本处理的核心组件,负责将原始文本转换为倒排索引中的词项(terms)
2025-09-15 13:22:33
829
原创 深入剖析 Elasticsearch (ES) 的近实时搜索原理
Elasticsearch通过近实时(NRT)搜索机制实现高效查询与数据安全的平衡。其核心原理包括:1)数据先写入内存缓冲区和Translog日志;2)每秒自动刷新(Refresh)将内存数据转为可搜索的Segment;3)定期刷盘(Flush)实现持久化。这种设计通过牺牲少量实时性(约1秒延迟)换取高性能,同时利用不可变的Lucene Segment提升查询效率,Translog保证数据安全。整个过程实现了写入即可查与持久化的双重目标。
2025-09-12 16:52:58
620
原创 Redis模块-RedisJson
RedisJSON是Redis的扩展模块,支持高性能JSON文档存储与查询。本文介绍了RedisJSON的安装方法(需Redis6.0+)、核心特性(内存存储、JSONPath查询、原子操作)及典型应用场景(会话管理、实时配置等)。重点演示了SpringBoot集成方案,包括配置类编写、工具类封装和CRUD操作示例,展示了存储用户对象、修改字段、数组操作等实用功能。RedisJSON适用于需要灵活数据结构和高速访问的场景,为微服务架构提供了有效的JSON数据存储解决方案。
2025-08-07 15:49:53
1087
原创 Flink实战教程从入门到精通(基础篇)(六)Flink运行时架构
目录一、系统架构1、作业管理器(JobManager) (1)JobMaster(2)资源管理器(ResourceManager)(3)分发器(Dispatcher) 2、任务管理器(TaskManager) 二、核心概念1、并行度 (1)并行子任务和并行度(2)并行度的设置 1)代码中设置2)提交应用时设置3)配置文件中设置 总结:并行度的优先级2、算子链(1)算子间的数据传输1)一对一(One-to-one,forwarding)2)重分区(Redistributing)(2)
2025-03-30 16:52:26
955
原创 Flink实战教程从入门到精通(基础篇)(五)Flink部署-YARN运行模式
负责存储大规模数据分布存储在多个节点上,支持数据的可靠读写,适合处理大文件和流式数据访问。:负责集群资源的管理和调度,将资源分配给不同的应用程序,使多个应用程序能在同一集群中共享资源并高效运行。一种编程模型和计算框架,用于大规模数据集的并行处理。
2025-03-27 11:59:06
1104
原创 Hadoop集群搭建(hdfs、yarn)
Hadoop 是 Apache 软件基金会旗下的一个开源项目,是用于处理大数据的分布式系统基础架构,被广泛应用于大数据存储、处理和分析等场景。
2025-03-24 21:42:46
1264
原创 Flink实战教程从入门到精通(基础篇)(四)Flink部署-Standalone运行模式
在一些应用场景中,对于集群资源分配和占用的方式,可能会有特定的需求。Flink为各种场景提供了不同的部署模式,主要有以下三种:会话模式单作业模式应用模式它们的区别主要在于:集群的生命周期以及资源的分配方式;以及应用的main方法到底在哪里执行——客户端(Client)还是JobManager。
2025-03-24 09:59:29
1147
原创 Flink实战教程从入门到精通(基础篇)(三)Flink集群部署
Flink提交作业和执行任务,需要几个关键组件::代码由客户端并做,之后提交给J。就是Flink集群里的“”,对作业进行中央调度管理;而它获取到要执行的作业后,会进一步处理转换,然后分发任务给众多的TaskManager。,就是真正“”,都是它们来做的。注意:Flink是一个非常灵活的处理框架,,还所以接下来我们会先做一个简单的介绍:让大家有一个初步的认识,之后再展开讲述不同情形下的Flink部署。
2025-03-21 22:22:30
1883
1
原创 Flink实战教程从入门到精通(基础篇)(二)Flink快速上手
对 Flink有了基本的了解后,接下来就要理论联系实际,真正上手写代码了。Flink底层是以Java编写的,并为开发人员同时提供了完整的Java和ScalaAPI。在本书中,代码示例将全部用Java 实现;而在具体项目应用中,可以根据需要选择合适语言的API进行开发。在这一章,我们将会以大家最熟悉的 IntelliJIDEA 作为开发工具,用实际项目中最常见的Maven 作为包管理工具,在开发环境中编写一个简单的 Flink项目,实现零基础快速上手。对于批处理和流处理输出的结果,可以发现。
2025-03-19 21:57:12
2471
原创 Flink实战教程从入门到精通(基础篇)(一)Flink简介
Flink的核心目标,是数据流上的有状态计算。具体说明:Apache Flink是一个框架和分布式处理引擎,用于对无界和有界的数据流进行有状态的计算。Flink计算模型流式计算微批处理时间语义事件时间、处理时间处理时间窗口多、灵活少、不灵活(窗口必须是批次的整数倍)状态有没有流式SQL有没有。
2025-03-19 14:47:17
2891
原创 GO语言入门详解(四)之 函数
在 Go 语言中,函数值是非常灵活和强大的工具。你可以将函数赋值给变量、作为参数传递、作为返回值,甚至可以使用匿名函数和闭包来实现更复杂的功能。
2025-03-06 18:00:07
894
1
原创 GO语言入门详解(三)之 复合数据类型
在第二章我们讨论了基本数据类型,它们可以用于构建程序中数据的结构,是Go语言世界的原子。在本章,我们将讨论复合数据类型,它是以不同的方式组合基本类型而构造出来的复合数据类型。我们主要讨论四种类型——数组、slice、map和结构体——同时在本章的最后,我们将演示如何使用结构体来解码和编码到对应JSON格式的数据。数组和结构体是聚合类型;它们的值由许多元素或成员字段的值组成。数组是由同构的元素组成——每个数组元素都是完全相同的类型——结构体则是由异构的元素组成的。数组和结构体都是有固定内存大小的数据结构。
2025-02-04 21:00:26
699
原创 GO语言入门详解(二)之 基础数据类型
本章讲解go语言的基础数据类型,在 Go 语言中,基础数据类型(或称为基本类型)是指内置的、预定义的数据类型,开发者可以直接使用它们。这些类型是构建其他复杂数据结构和自定义类型的基础。Go语言的数值类型包括几种不同大小的整数、浮点数和复数。每种数值类型都决定了对应的大小范围和是否支持正负符号。
2025-01-09 18:03:19
811
原创 GO语言入门详解(一)之 程序结构
包声明语句之后是import语句导入依赖的其它包,然后是包一级的类型、变量、常量、函数的声明语句,包一级的各种类型的声明语句的顺序无关紧要(译注:函数内部的名字则必须先声明之后才能使用)。在包一级声明语句声明的名字可在整个包对应的每个源文件中访问,而不是仅仅在其声明语句所在的源文件中访问。值语句是显式的赋值形式,但是程序中还有很多地方会发生隐式的赋值行为:函数调用会隐式地将调用参数的值赋值给函数的参数变量,一个返回语句会隐式地将返回操作的值赋值给结果变量,一个复合类型的字面量(§4.2)也会产生赋值行为。
2025-01-08 16:29:01
1010
原创 Redis学习总结(完整版)
Redis(Remote Dictionary Server ),即远程字典服务!是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。免费和开源!是当下最热门的 NoSQL 技术之一!也被人们称之为结构化数据库!Redis能干嘛?
2022-11-17 14:33:00
680
原创 MongoDB
MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
2022-11-03 15:24:48
835
原创 springboot整合Mongodb
上节说道mongodb的特性以及组成部分,这节介绍springboot如何快速的整合mongodb,完成我们的需求。
2022-11-03 15:21:54
333
原创 RocketMQ详解、安装、运行
我们平时使用一些体育新闻软件,会订阅自己喜欢的一些球队板块,当有作者发表文章到相关的板块,我们就能收到相关的新闻推送。发布-订阅(Pub/Sub)是一种消息范式,消息的发送者(称为发布者、生产者、Producer)会将消息直接发送给特定的接收者(称为订阅者、消费者、Comsumer)。而RocketMQ的基础消息模型就是一个简单的Pub/Sub模型。
2022-10-26 15:24:31
4309
原创 JAVA代码实现ElasticSearch搜索(入门-进阶)(二):聚合函数,group by 分组 ,分桶,桶聚合 bucketing,双重聚合
JAVA代码实现ElasticSearch搜索(入门-进阶)(二):聚合函数(group by),双重聚合
2022-05-24 09:58:59
5125
2
原创 xxl-job分布式定时任务,springboot集成xxl-job。
xxl-job分布式定时任务,springboot集成xxl-job。
2022-05-23 15:30:38
1211
3
原创 JAVA代码实现ElasticSearch搜索(入门-进阶)(一):搜索方法、多字段查询、高亮展示
ElasticSearch查询搜索(完整版):多字段查询、组合查询、聚合查询
2022-04-24 13:51:01
4550
1
原创 解决Alibaba Nacos 权限认证绕过漏洞 (CVE- - 2021- - 29441)亲测有效
解决Alibaba Nacos 权限认证绕过漏洞 (CVE- - 2021- - 29441)亲测有效2.可以通过外网随意添加nacos用户名及密码
2022-04-22 10:13:43
18144
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人