- 博客(48)
- 收藏
- 关注
原创 Spring Cloud Stream与Flink集成实战
Spring Cloud Stream 与 Apache Flink 分别代表了两种不同的流处理范式,它们的集成旨在将事件驱动的微服务架构与高吞吐、有状态的流处理引擎相结合,以应对复杂的实时业务场景。两者集成并非直接替代,而是互补,核心在于,利用其Binder抽象简化与Kafka、RabbitMQ等消息中间件的连接,同时发挥Flink强大的窗口计算、状态管理和Exactly-Once语义处理能力。
2026-05-13 08:44:57
380
原创 Java 25虚拟线程使用示例
在 Java 25 中,虚拟线程已作为一项成熟稳定的特性被正式引入,其核心目标在于简化高并发应用程序的编写,尤其擅长处理大量 I/O 密集型任务。相较于传统平台线程,虚拟线程的创建和上下文切换成本极低,允许开发者以“一个请求一个线程”的同步编程模型来构建高吞吐量的服务。
2026-05-12 20:28:34
370
原创 Java自定义线程池核心参数解析
以下示例展示了如何创建一个功能完整的自定义线程池,包括任务提交、状态监控和优雅关闭。// 1. 自定义线程工厂:设置线程名称、优先级、是否为守护线程等@Override// 设置为非守护线程// 2. 自定义拒绝策略:当线程池和队列都满时,由调用者线程直接执行任务@OverrideSystem.err.println("任务被拒绝,由调用者线程直接执行: " + r.toString());if (!r.run();// 由提交任务的线程直接执行// 3. 创建自定义线程池。
2026-05-11 19:50:35
343
原创 Flink2.0学习笔记:stream-api source源:jdbc 流式处理(自定义支持多数库的连接池)和批次处理(使用mysql-flax 预加载数据)
Flink2.0学习笔记:stream-api:jdbc 流式处理(自定义支持多数库的连接池)和批次处理(使用mysql-flax 预加载数据)
2025-08-30 11:58:57
438
原创 Flink2.0学习笔记:使用HikariCP 自定义sink实现数据库连接池化
Flink2.0学习笔记:使用HikariCP 自定义sink实现数据库连接池化
2025-08-23 18:38:57
1418
原创 springboot 整合spring-kafka客户端:SASL_SSL+PLAINTEXT方式
首先cd 到kafka目录:D:\kafka_2.13-4.0.0\config\ssl。先确定最新版kafka_2.13-4.0.0的配:server.properties。最后使用命令将证书导入信任库:这一步 需要以管理员的身份运行cmd。以及:jaas.conf。到这里所有的配置就完成了。确保kafka正常启动。
2025-07-17 21:54:56
807
原创 spring-ai 1.0.0 (3)交互增强:Advisor 顾问模块
spring-ai 1.0.0 (3)交互增强:Advisor 顾问模块
2025-07-06 13:09:04
560
原创 关于spring懒加载
配置类(使用 `@Configuration` 注解的类)中定义的 `@Bean` 方法会在容器启动时进行解析,但只有当这些方法返回的 Bean 被请求或用于依赖注入时才会真正执行构造逻辑。某些扩展点(如 `BeanFactoryPostProcessor` 或 `BeanPostProcessor`)可能会影响 Bean 的初始化流程。在 Spring Boot 应用启动过程中,带有 `@Bean` 注解的方法所定义的 Bean 是否被初始化,取决于这些 Bean 是否被实际引用或使用。
2025-06-24 08:01:37
573
原创 一个完整的日志收集方案:Elasticsearch + Logstash + Kibana+Filebeat (三)
利用ES的向量检索能力完成历史聊天记录的存储和向量检索,让ai聊天有记忆
2025-06-10 21:48:11
691
原创 一个完整的日志收集方案:Elasticsearch + Logstash + Kibana+Filebeat (二)
一个完整的日志收集方案:Elasticsearch + Logstash + Kibana+Filebeat
2025-06-07 22:13:14
2193
4
原创 一个完整的日志收集方案:Elasticsearch + Logstash + Kibana+Filebeat (一)
它不能直接使用elastic超级用户账号来运行Kibana,因为这是一个安全风险。我们需要使用服务账号(Service Account)来代替。若未设置,启动时可能因找不到 tools.jar 报错。禁止使用 elastic 超级用户运行 Kibana!
2025-06-01 20:19:42
1085
原创 Kafka KRaft + SSL + SASL/PLAIN 部署文档
本文档介绍如何在 Windows 环境下部署 Kafka 4.x,使用 KRaft 模式、SSL 加密和 SASL/PLAIN 认证。
2025-05-28 21:13:08
1828
原创 Spring Boot JWT认证示例项目
这是一个基于Spring Boot的REST API示例项目,集成了JWT(JSON Web Token)认证和Shiro权限管理框架,并使用Swagger/OpenAPI进行API文档管理。
2025-05-18 14:40:53
1125
原创 BIO(Blocking I/O)、NIO(Non-blocking I/O)和 AIO(Asynchronous I/O)
BIO(Blocking I/O)、NIO(Non-blocking I/O)和 AIO(Asynchronous I/O)
2025-05-06 09:51:54
932
原创 内网穿透案例:ICE候选者交换连接建立 的场景分析
内网穿透方案:ICE(Interactive Connectivity Establishment,交互式连接)
2025-04-19 19:43:02
1064
原创 【源码解读】qwen-max的工具调用 Function Calling过程分析
【源码解读】qwen-max的工具调用 Function Calling过程分析。
2025-04-17 17:35:59
1015
原创 基于langChain使用Chroma向量数据库和Ollama的嵌入模型和Ollama3.2实现的一个RAG服务
ollama_embeddings = OllamaEmbeddings(model="llama3.2") # 使用llama3.2嵌入模型。"""PDF分块并存储到Chroma向量数据库(使用Ollama的llama3.2嵌入模型)"""persist_directory="chroma_storage" # 数据保存目录。llm = Ollama(model="llama3.2") # 显式指定模型。"""基于Ollama的llama3.2模型进行RAG问答"""# 2. 加载向量数据库。
2025-04-14 13:55:36
739
原创 java线程安全整理
**JDK 优化后 `synchronized` 性能接近 `ReentrantLock`**,简单场景仍可优先使用 `synchronized`。| **死锁** | 线程互相等待,无法继续 | `T1` 持有 `A` 等 `B`,`T2` 持有 `B` 等 `A` |4. **循环等待**:存在一个线程循环等待链,如 `T1` 等待 `T2` 的资源,`T2` 等待 `T1` 的资源。- **`ReentrantLock` 比 `synchronized` 更灵活**,支持可中断、超时、公平锁等。
2025-03-27 16:22:17
770
原创 委托、装饰和代理
*定义**:装饰模式是一种结构型设计模式,它允许你通过将对象放入包含行为的特殊封装对象中来为原对象增加新的行为。委托对象通常持有被委托对象的引用,并在需要时调用被委托对象的方法。**定义**:代理模式是一种结构型设计模式,它提供了一个代理对象来控制对另一个对象的访问。代理对象通常充当客户端和目标对象之间的中介。- **委托模式**:一个对象将任务交给另一个对象处理,强调职责分离。- **代理模式**:控制对对象的访问,强调访问控制和功能增强。- **装饰模式**:动态地为对象增加功能,强调功能的扩展。
2025-02-27 19:04:14
456
原创 Amazon Virtual Private Cloud(亚马逊VPC)学习实践
Amazon Virtual Private Cloud(亚马逊VPC)
2024-06-23 14:33:41
711
原创 keycloak-24.0.4整合spring security oauth2之 spring-cloud-alibaba2022.0.0
keycloak-24.0.4整合spring security oauth2之 spring-cloud-alibaba2022.0.0
2024-05-30 20:38:27
1398
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅