自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 收藏
  • 关注

原创 Java定时任务

│ Java 定时任务技术栈 ││ 第一代:JDK 原生 ││ ├─ Timer / TimerTask (单线程,已不推荐) ││ └─ ScheduledExecutorService (线程池,推荐) ││ 第二代:框架集成(单机) ││ ├─ Spring @Scheduled (最常用) ││ └─ Quartz (功能最全,偏重) ││ 第三代:分布式调度平台 ││ ├─ XXL-JOB (轻量,国内主流) ││ ├─ Elastic-Job (基于 Zookeeper) │。

2026-09-16 21:47:01 240

原创 使用云服务+hermes+小米mimo模型 我用微信操控服务器自己编程并部署实操

本文分享了一套低成本(约45元/月)的「微信+AI编程助手」自动化系统搭建方案:通过腾讯云服务器运行Hermes,接入小米MiMo模型API,实现微信发送中文指令后自动编写、部署代码。全流程涵盖服务器配置、API接入、微信通道绑定及调试优化,支持代码生成、执行与部署,具备高性价比与可扩展性,适合个人开发者快速体验AI编程自动化。

2026-09-16 18:00:42 478

原创 java责任链模式

角色职责Handler(抽象处理者)定义处理接口,通常持有下一个处理者的引用ConcreteHandler(具体处理者)实现自己的判断逻辑,决定"处理并中断"还是"交给下一个"Client(客户端)组装链条,把请求送入链头fill:#333;important;important;fill:none;fill:none;important;important;important;important;important;important;important;important;important;

2026-09-15 18:15:00 367

原创 记录AI学习之路Day19:PG VECTOR

pgVector 是 PostgreSQL 的一款开源扩展(extension),它让关系型数据库直接支持向量数据类型(vector)与近似最近邻(ANN)检索。一句话:你不用再为向量单独搭一套 Milvus/Chroma,在熟悉的 PostgreSQL 里就能存向量、算相似度、做语义搜索。它的核心价值在于统一技术栈。

2026-09-15 10:49:10 632

原创 记录AI学习之路Day18:我用workbuddy召唤团队生成了一个可以部署的前端页面~

召唤专家团队 → 明确需求(利用 AI 优化需求)→ 对照演示让 AI 修改 → 部署并用 Hermes 启动。这套方法大幅缩短了「描述—实现—部署」的链路,非常适合快速落地原型。你也可以根据项目需要调整细节,欢迎在评论区交流。参考资料WorkBuddy 专家中心官方文档WorkBuddy 简介与核心能力专家团实战:召唤专家协作完成复杂任务(腾讯云开发者社区)

2026-09-09 21:15:00 387

原创 微信小程序

微信小程序是「无需下载安装、用完即走」的应用,嵌在微信里运行。用户扫一扫或搜一下就能打开,不用关心安装卸载。核心特点特性说明免安装嵌在微信内,点开即用跨平台一套代码同时跑在 iOS / Android 上体积小主包 ≤ 2MB,分包总大小 ≤ 20MB能力丰富可调用微信支付、定位、扫码、分享等原生能力入口多公众号菜单、搜一搜、扫码、分享卡片都能进与 H5 / 原生 App 对比fill:#333;important;important;fill:none;color:#333;

2026-08-25 23:18:02 350

原创 从 BIO、NIO、AIO 到多路复用与 Netty

一图回顾全篇:fill:#333;important;important;fill:none;color:#333;color:#333;important;fill:none;fill:#333;height:1em;并发不够底层 OS异步回调工程封装BIO: 一连接一线程阻塞 accept/readNIO: 多路复用Linux 用 epoll 模拟Netty: 主从 Reactor拆包/心跳/重连 全内置BIO= 线程换连接,简单但不可扩展;NIO。

2026-08-25 22:53:53 434

原创 浅谈 Java 异步重试机制:保证「事务提交后再发消息」,失败自动重试

在分布式系统里,我们经常会遇到这类需求:下完单,要异步通知积分服务加积分、通知库存服务扣库存、通知风控服务做校验……最常见的做法是:在本地事务里「写完业务数据,紧接着发一条 MQ 消息」。但很多在这里栽过跟头——消息发出去了,本地事务却回滚了,于是出现「消息说订单已支付,数据库里却没有订单」的数据不一致。消息一定要在「本地事务提交成功之后」再发送;并且,为了防止 MQ 短暂抖动导致消息丢失,发送动作本身还要带重试。为什么不能在事务里「先发消息」

2026-08-24 23:29:03 579

原创 java大文件上传:分片上传、断点续传、秒传

把“一个大请求”拆成“一堆小请求 + 一个合并请求”。分片解决单次超时/内存问题;断点续传靠fileHash目录下的.part清单实现“缺哪补哪”;秒传靠fileHash命中已有最终文件实现“零字节上传”;前端用Blob.slicespark-md5后端用流式存储 + 按序合并即可落地。

2026-08-24 23:18:32 210

原创 Vue知识点记录:从Vue2到Vue3

📑 目录Vue 3 不是 Vue 2 的小升级,而是底层全面重写:Vue 版本演进Vue 2Options APIdefineProperty 响应式$set / $delete 补丁Mixin 复用Vuex 3 状态管理Vue Router 3Webpack 构建Vue 3Composition APIProxy 响应式自动监听增删改Hooks 复用Pinia 状态管理Vue Router 4Vite 构建TypeScript 一等公民Teleport / Suspense性能提升 41%Vue2 在初

2026-08-21 22:40:50 487

原创 记录AI学习之路Day17:SSE流式输出,AI 大模型流式对话(打字机效果)

一、SSE 概述:什么是服务器推送事件二、SSE 工作原理:基于 HTTP 的单向长连接三、事件流格式详解:text/event-stream 协议规范四、实时通信方案对比:SSE vs WebSocket vs 轮询五、前端实战:EventSource API 详解六、后端实战:Java Spring Boot 之 SseEmitter七、后端实战:Servlet 原生方式与 Spring WebFlux八、后端实战:Python FastAPI 与 Node.js Express九、实战案例:AI 大模

2026-08-21 22:39:30 531

原创 kafka基础知识

Apache Kafka 是一个分布式、高吞吐、可持久化的消息队列(消息中间件),由 LinkedIn 于 2011 年开源,后捐献给 Apache 基金会。它最初是为了解决 LinkedIn 海量日志传输问题而设计的,如今已经成为大数据生态中事实标准的数据管道。一句话理解:Kafka 是一个「写入快、存得住、读不丢」的分布式消息系统,天生为海量数据而生。│ Kafka 在大数据生态中的位置 │数据源 Kafka 数据消费方│ 业务系统 │ ──────→ │ │ ──────→ │ 实时计算 │。

2026-08-18 21:27:07 403

原创 接口调用性能优化——Java 在 Controller 层使用 Callable 调用(提升效率)

高并发 Web 接口的响应效率,往往不是被「业务逻辑」拖慢的,而是被「线程被白白占用等待 IO」拖垮的。本文围绕。全文包含可复制运行的 Spring Boot 代码、原理拆解、性能对比与踩坑指南。适合人群:Java 后端开发(3 年以上经验)、Spring Boot 应用负责人、对接口性能优化感兴趣的同学。

2026-08-18 21:17:13 798

原创 Linux命令行合集(涵盖定时任务、防火墙、SHH、线上问题实战等)

Linux命令合集

2026-08-17 22:01:58 240

原创 从HTML到我的个人主页——前端入门实战记录

前端:从零开始掌握网页开发三件套(HTML5 / CSS / JavaScript),并最终亲手搭建、测试、部署一个完整的个人网站。全文按「骨架 → 外观 → 交互 → 综合实战」的顺序展开,所有代码均可直接复制运行。

2026-08-17 21:48:23 268

原创 消息队列篇——RocketMQ

RocketMQ是阿里巴巴开源的分布式消息中间件,基于 Java 语言开发,2016 年捐赠给 Apache 软件基金会,2017 年成为 Apache 顶级项目。它是一款低延迟、高吞吐、高可用、强一致的分布式消息队列,被广泛应用于电商、金融、物流、社交等大规模分布式系统中。RocketMQ 名字的由来:Rocket(火箭)+ MQ(Message Queue,消息队列),寓意"像火箭一样快的消息队列"。顺序消息指消息的消费顺序与生产顺序保持一致。RocketMQ 提供分区有序全局顺序。

2026-08-15 22:08:12 549

原创 消息队列篇——RabbitMQ

一、RabbitMQ 概述二、AMQP 协议与核心概念三、安装部署四、管理界面五、快速入门(Hello World)六、Work Queue 工作队列模式七、Fanout Exchange(扇出)八、Direct Exchange(直连)九、Topic Exchange(主题)十、Headers Exchange(头匹配)十一、Exchange 类型对比十二、消息可靠性——生产者端十三、消息可靠性——消费者端十四、死信队列(DLX)十五、延迟队列十六、消息优先级与惰性队列十七、集群与镜像队列十八、常用设计模

2026-08-15 22:07:35 918

原创 Python 基础知识

本文适合 Python 初学者及希望系统复习 Python 基础的开发者。全文涵盖从 Python 概述到常用标准库的核心知识点,每个知识点均配有可运行的代码实例,帮助你快速上手并深入理解。

2026-08-12 22:26:34 352

原创 JavaSE 基础知识

本文适合 Java 初学者及希望系统复习 JavaSE 基础的开发者。全文涵盖从 Java 概述到多线程的核心知识点,每个知识点均配有可运行的代码实例,帮助你快速上手并深入理解。

2026-08-12 22:23:52 263

原创 TDengine 时序数据库使用

> 本文主要介绍 TDengine 时序数据库的安装部署、数据模型、基础语法、降采样、窗口切分、插值查询、流式计算、连接器使用等全流程,配以大量 SQL 实例和图文说明,主要用于个人学习。

2026-08-11 18:11:14 668

原创 【java】浅谈java stream的使用(附带案例场景)

本文介绍了Java 8 Stream流式编程的核心概念和实战应用。主要内容包括:Stream的特点(惰性求值、一次性消费、不修改源数据)、创建方式(集合/数组/直接生成),以及丰富的中间操作(filter过滤、map转换、flatMap展开等)和终端操作(collect收集、reduce归约等)。文章通过Student实体类的10个典型场景演示了Stream的实际应用,如成绩统计、分组排序等,并提供了完整操作流程图。最后还涉及并行流优化和常见陷阱提示,帮助开发者掌握流式编程的核心技巧,提升代码简洁性和处理效

2026-08-08 18:04:22 365

原创 Java JUC 并发编程

**摘要**:本文简单梳理 Java 并发编程的核心知识体系,从 CPU 级别的 CAS 指令、volatile 内存可见性与内存屏障出发,深入剖析 AQS(AbstractQueuedSynchronizer)的内部实现——CLH 变种队列、独占/共享模式及 Condition 条件队列。在此基础上,介绍 synchronized 锁升级路线(偏向锁→轻量级锁→重量级锁)、ReentrantLock 公平/非公平机制、读写锁与 StampedLock 乐观读,并结合线程池参数、拒绝策略及六类高频场景题

2026-08-07 08:57:17 230

原创 记录AI学习之路Day16:浅谈transformer架构

概率性计算 = 输出的是一个"概率分布",不是精确值。Transformer 的 Softmax 就是概率性计算:Q · K 的点积 → [2.0, 1.5, 0.5]含义:模型不是"肯定"某个词最重要,而是"57% 的概率认为第一个词最重要"。这种"模糊"恰恰是语言理解的优势 — 语言本身就是模糊的。概率性计算的好处:① 允许不确定性 → "打"可以是"打篮球"也可以是"打电话"② 梯度可导 → 反向传播时必须用概率,不能用硬选择③ 多模态输出 → 可以给出 Top-N 最可能的结果。

2026-08-05 22:49:11 197

原创 浅谈mybatis的使用

MyBatis 核心三层:① Mapper 接口 → 定义方法签名② XML 映射文件 → 写 SQL + 结果映射③ 实体类 → 承载查询结果核心标签:查询:<select> + <resultMap> + <association>/<collection>条件:<where> + <if> + <foreach>更新:<set> + <if>(只更新不为空的字段)一条铁律:能用 #{} 就别用 ${}必须用 ${} 时(ORDER BY / 表名)一定加白名单校验。

2026-08-05 12:41:36 237

原创 Java 23 种设计模式

/ 产品族:Button + TextField 是一套// Windows 风格} }} }// Mac 风格} }} }// 抽象工厂 — 创建产品族一句话:普通工厂一个方法一种产品,抽象工厂一个方法多个关联产品。// 计算 "1 + 2 - 3"right = r;// 使用// 3一句话:很少用,JDK 的就是。创建型 — 怎么 new单例(一个)→ 工厂(子类决定)→ 抽象工厂(产品族)→ 建造者(分步构造)→ 原型(克隆)结构型 — 类/对象怎么组合。

2026-07-23 00:47:50 303

原创 浅记ES学习

ES 三部曲:① 存储 → JSON 文档 → 分词 → 倒排索引② 搜索 → 查倒排索引 → 多分片并行 → 合并排序③ 扩展 → 加节点 → 分片自动迁移 → 负载均衡核心原理就一张图:│ 原始文档 → 分词 → 倒排索引 ││ "我爱北京天安门" ││ ↓ ││ 词 → Posting List ││ 我 → [1, 2, 5] ││ 爱 → [1, 3] ││ 北京 → [1, 2, 4, 5] ││ 天安门→ [1, 4] ││ │。

2026-07-17 11:11:44 231

原创 记录AI学习之路Day15:浅记简单的SpringAI框架使用(advisor的使用)

Component@Override// ① 前置:估算 token 数log.warn("提示词过长 ({} tokens),自动截断", estimatedTokens);// 截断 userText// 构建新请求.build();// ② 放行// ③ 后置:记录实际 token 用量log.info("实际消耗 token: {}", actualTokens);

2026-07-17 00:34:09 510

原创 记录AI学习之路Day13:小模型(AI生成)

小模型不是"差模型",而是"聚焦的模型"。大模型是瑞士军刀 — 什么都能干,但每样都不极致。小模型是手术刀 — 只切一种组织,但切得又快又准。在企业场景:大模型 = 战略层(复杂决策、创意生成)小模型 = 执行层(分类、抽取、简单对话)前者调用一次,后者每天跑几百万次。

2026-07-15 23:45:09 284

原创 浅记redis数据类型底层结构

Redis 的每个数据类型都有一个默认实现和一个阈值切换的轻量实现。数据少时省内存,数据多时换高性能结构。二、SDS(Simple Dynamic String)— 所有字符串的根基2.1 C 语言字符串的四大问题2.2 SDS 的结构(Redis 3.2+ 分五档)2.3 SDS 的四个核心优势三、Dict(字典)— Redis 的核心中的核心Redis 数据库本身就是一个大 Dict(key → value),Hash 类型底层也是 Dict。3.2 渐进式 rehash —

2026-07-13 10:56:59 226

原创 浅记java线程池

/ 场景:拒绝时记录日志 + 发告警 + 落库待后续重试@Overridelog.error("线程池已满!// 发钉钉/飞书告警alertService.send("线程池拒绝任务");// 落库,后续定时任务拉取重试// Executors 提供的便捷方法 — 全都埋了坑// ❌ newFixedThreadPool — LinkedBlockingQueue 无界,OOM。

2026-07-13 10:55:18 214

原创 浅记MySQL EXPLAIN — 执行计划

EXPLAIN 就是一条命令,但读懂它需要理解 MySQL 是怎么执行查询的。核心三看:① type → 访问方式,别出现 ALL② key → 索引用了没,key_len 判断用了多少③ Extra → Using filesort / Using temporary 必须消灭一个优化完毕的 SQL:key = 有值rows < 1WExtra = Using index(或干净无特殊标记)

2026-07-09 15:20:48 284

原创 记录AI学习之路Day13:Skill浅记

Skill 不是 AI 的超能力,而是把 AI 反复验证过的成功路径固化下来,让下一次执行不再从零开始。就像人类的"经验"不是写在基因里的,而是通过反复实践、踩坑、总结,最后内化成的本能。AI Agent 的 Skill,就是 AI 的经验。

2026-07-08 22:25:27 202

原创 浅记Saas理论

是一种软件交付模式:用户不需要自己部署服务器、不需要运维,打开浏览器/App 就能用。传统软件:你买光盘/下载 → 装在自己服务器 → 自己维护 → 自己升级SaaS: 你注册账号 → 打开网页 → 直接用 → 服务商负责一切SaaS 的核心是多租户,多租户的核心是数据隔离。

2026-07-06 09:51:17 255

原创 初识DDD领域模型记录

DDD 的本质不是技术,是"让代码说业务的语言"战略设计 → 划定边界,统一语言(开会就能解决大部分问题)战术设计 → 实体、值对象、聚合、领域服务、事件(代码落地)核心心法:1. 领域模型要"富" — 行为和数据在一起,别做贫血模型2. 聚合要"小" — 一个事务只改一个聚合3. 仓储要"纯" — 只返回完整聚合,隔离持久化细节4. 事件要"用" — 解耦聚合,实现最终一致DDD 不是在代码里引入"XXService"就叫 DDD,

2026-06-29 16:16:51 262

原创 记录redis学习

原因一:哈希槽的边界条件Redis Cluster 固定 16384 个哈希槽(Slot)每个 Key 通过 CRC16(key) % 16384 落到某个 Slot如果只有 2 个主节点,一个挂了 =一半数据不可用。原因二:Raft 共识协议要求奇数3 节点集群:至少需要 floor(3/2) + 1 = 2 票才能达成共识2 节点集群:至少需要 floor(2/2) + 1 = 2 票 → 一票也不能少 → 等于没有容错这就是为什么。

2026-06-29 09:50:57 228

原创 记录分布式事务的实现方式和用法(有借助AI)

选型口诀:短事务用 AT 省心省力高并发用 TCC 精准控制长流程用 Saga 补偿编排异步解耦用本地消息表 / RocketMQ永远不要在生产环境用 XA,除非你知道自己在干什么永远要有监控和告警,所有最终一致方案都可能出现不一致。

2026-06-25 09:13:02 247

原创 记录AI学习之路Day12:AIGC

Hermes生成AIGC~自学用

2026-06-25 08:17:50 284

原创 记录AI学习之路Day11:Milvus 向量数据库入

Milvus 是一个开源的向量数据库,专门设计用于存储、索引和管理大规模向量数据。它支持多种向量索引算法,能够高效处理相似性搜索和 AI 应用中的向量检索需求。

2026-06-15 12:18:52 256

原创 记录AI学习之路Day09:AI中的向量:密集向量与稀疏向量详解

密集向量是指向量中绝大多数元素都是非零值的向量。每个维度通常都承载着特定的、有意义的语义信息。稀疏向量是指向量中大部分元素为零(或接近零)的向量。它通常用于表示高维空间中的对象,其中只有少数几个特征被激活。向量是AI将现实世界数据“翻译”成机器语言的通用货币。密集向量紧凑、语义丰富,是深度学习的基石,适合表示融合后的复杂特征。稀疏向量高效、可解释,是处理高维、稀疏数据的利器,适合表示原始的、独立的特征。核心区别在于信息存储的密度和方式,从而导致了不同的计算、存储和应用范式。最佳实践。

2026-06-08 17:07:21 302

原创 记录AI学习之路Day08:什么是MCP协议?MCP协议在工具中的使用。

MCP(Model Context Protocol)是一个开源协议,旨在标准化 AI 助手与外部工具、数据源之间的交互方式。它允许 AI 模型安全、可控地访问外部资源,如数据库、API、文件系统等,从而扩展 AI 助手的能力边界。在 vibe coding工具中中集成 MCP,意味着您可以让 AI 助手直接访问您的项目上下文、代码库、文档等资源,实现更智能的代码生成、调试和重构。在 Cursor 编辑器中集成 MCP 可以显著提升开发体验,让 AI 助手真正理解您的项目上下文。

2026-06-04 18:36:26 214

基于HTML的JSON美化工具 支持BASE64转换

基于HTML的JSON美化工具 支持BASE64转换

2026-09-09

一个纯HTML5+浏览器存储网页文件,健身热量管理平台

一个纯HTML5+浏览器存储网页文件,健身热量管理平台

2026-08-12

空空如也

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

TA关注的人

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