自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(413)
  • 资源 (1)
  • 收藏
  • 关注

原创 Java强化学习知识点梳理

/ TODO。

2023-02-22 16:57:34 617

原创 EasyTier初次使用

官网EasyTier 是一款简单、安全、去中心化的内网穿透和异地组网工具,适合远程办公、异地访问、游戏加速等多种场景。无需公网 IP,无需复杂配置,轻松实现不同地点设备间的安全互联。软件即可通过命令行使用,也可以通过图形界面操作。下载后可直接使用,无其他任何依赖。

2026-10-29 23:17:08 159

原创 MySQL 转 PostgreSQL 使用指南

因此,MySQL 中“二级索引天然携带主键”“这个查询一定是覆盖索引”的判断,不能原封不动移到 PG。真正需要调整的是:数据库对象的组织方式、字段类型、部分 SQL 写法,以及事务和性能排查习惯。应用传入 ID、布尔、UUID、时间时,也应使用正确的参数类型,不要依赖 MySQL 中熟悉的隐式转换行为。两者都支持常用的 B-tree 索引、联合索引和唯一索引,基于查询条件和排序设计索引的思路仍然有效。适用读者:已有 MySQL 使用经验,需要在新项目中使用 PostgreSQL 的开发者。

2026-10-28 21:59:09 147

原创 【Jenkins】入门学习

限制最大堆内存 1.5G,防止 Jenkins 把你仅剩内存吃光、OOM 崩溃,适配你的 3.6G 内存机器!腾讯云 Docker 容器用户使用指南。网友有关Jenkins的文档。

2026-10-22 17:42:26 212

原创 DeepAgents 深度搜索项目

主智能体工具:generate_markdown —— 生成标准 Markdown 文档convert_md_to_pdf —— 将 Markdown 转为 PDF 文件read_file_content —— 读取上传文件,并解析内容# main_agent tool导入# 1. 搭建多智能体结构# 创建主智能体。

2026-10-10 21:32:08 231

原创 DeepAgents(LangChain 官方的 Agent Harness)

1.DeepAgents官方文档2.小林coding Agent面试题DeepAgents是LangChain推出的开源Python智能体套件(agent harness),底层基于 LangGraph,专门用来构建能处理长周期、复杂多步骤任务的LLM Agent,解决普通单轮工具调用 Agent 上下文膨胀、长任务容易 “失忆” 的问题。DeepAgents是一个独立库,建立在LangChain代理核心构建模块之上(关系类似于:SpringBoot和Spring Framework)

2026-10-10 09:49:45 253

原创 【智库】RAG(二)

智库 (RAG) 是一款基于 检索增强生成 (Retrieval-Augmented Generation) 技术的企业级智能问答系统。本项目致力于构建一套集“私有知识库精准问答、实时联网信息补充、多维度结果优化”于一体的全流程智能客服解决方案,旨在实现核心知识的私有化管理、问答结果的高精准度以及业务场景的灵活适配。代码总行数: 5507数据处理流水线(准备):数据处理流水线(准备):支持 PDF/Markdown 等多格式文档导入,执行文档结构化解析、智能切片、元数据提取及向量化存储的全链路预处理。

2026-08-27 14:07:14 387

原创 【Spring Cloud Alibaba】RocketMQ(三)

简单来说,就是⽣产者发出消息后,给⽣产者⼀个确定的通知,这个消息在Broker端是否写⼊完成了。就好⽐打电话,不确定电话通没通,那就互相说个“喂”,具体确认⼀下。然后关于3这个环节,通常MQ存盘时都会先写⼊操作系统的缓存page cache中,然后再由操作系统异步的将消息写⼊硬盘。这个中间有个时间差,就可能会造成消息丢失。如果服务挂了,缓存中还没有来得及写⼊硬盘的消息就会丢失。⽣产者发送消息之所以可能会丢消息,都是因为⽹络。其中,1、2、4 三个场景都是跨⽹络的,⽽跨⽹络就肯定会有丢消息的可能。

2026-08-26 09:53:40 338

原创 【Spring Cloud Alibaba】RocketMQ(二)

如果Broker端还没有返回SendResult,⽽⽣产者主线程已经停⽌了,那么SendCallback的执⾏线程也就会随主线程⼀起停⽌,对应的⽅法⾃然也就⽆法执⾏了。但是,这⾥还是会造成⼀种分裂,消息最终是由Consumer来处理,但是消息却是由Broker推送过来的,也就是说,Consumer⽆法确定⾃⼰将要处理的是哪些消息。这时,就可以创建另外⼀个新的消费者组,并通过ConsumerFromWhere属性指定这个消费者组的消费起点,从⽽让这个新的消费者组去消费之前发送过的历史消息。

2026-08-23 15:34:57 324

原创 【Spring Cloud Alibaba】RocketMQ(一)

MQ:MessageQueue,消息队列。是在互联⽹中使⽤⾮常⼴泛的⼀系列服务中间件。这个词可以分两个部分来看,⼀是Message:消息。消息是在不同进程之间传递的数据。这些进程可以部署在同⼀台机器上,也可以分布在不同机器上。⼆是Queue:队列。队列原意是指⼀种具有FIFO(先进先出)特性的数据结构,是⽤来缓存数据的。对于消息中间件产品来说,能不能保证FIFO特性,尚值得考量。但是,所有消息队列都是需要具备存储消息,让消息排队的能⼒。

2026-08-22 15:12:18 227

原创 【Spring Cloud Alibaba】Sentinel(三)

这里有个关键点:不是 “前 10 秒”,是。

2026-08-15 18:24:11 289

原创 【Spring Cloud Alibaba】Sentinel(二)

Sentinel 规则持久化通过 Nacos,确保 Nacos 在。

2026-08-15 15:18:16 391

转载 IDEA全局设置JDK、Maven、编码格式(转载)、moudle被ignore

2026-08-12 20:01:49 36

原创 【智库】RAG(一)

这里我们新建两个Collectionkb_chunks 存的是切片

2026-08-03 08:48:17 60

原创 Python虚拟环境 venv&uv

行业通用惯例:几乎所有 Python 项目都把虚拟环境命名为 .venv,放在项目根目录下。虚拟环境文件夹名称,. 开头在 Linux/macOS 会被默认隐藏。

2026-08-02 21:56:01 290

原创 如何写好一个Skill

如何写好一个Skill?本文以Mav Content Factory为例,说明Skill是模块化、可组合的工具箱(指令+案例+脚本),与系统提示词不同。获取高质量Skill的途径包括:官方skill.sh、插件市场、第三方社区SkillsMP(含6万开源Skill)。Skill优先级从高到低依次为:企业托管>用户全局>项目级>手动附加>旧兼容目录>插件内置>原生内置。还推荐了Skill制作教程视频。全文阐释了Skill的定义、优势及管理机制,为内容创作等工作流提供高效解决方案。

2026-07-03 20:54:18 458

原创 Milvus之BM25

BM25 是经典的关键词全文打分算法,用来计算「查询词」和「文档」的相关性分数。BM25 功能可将原始文本转换为稀疏向量,并根据词汇相关性对文档进行评分,从而实现全文检索。它应用基于术语的匹配和频率感知加权,支持高效检索与查询术语密切匹配的文本文档。※※※作为一个本地文本函数,BM25 函数在 Milvus 内部运行,不需要模型推理或外部集成。它为基于文本的搜索场景提供了一种确定且透明的检索机制。a. 分数越高,代表文档和你的关键词匹配度越高。b. Milvus 里的全文检索,底层就是 BM25。

2026-06-29 09:37:32 293

原创 【大模型应用开发】记忆

借鉴人类记忆系统的设计,我们可以理解为什么智能体也需要类似的记忆能力。人类智能的一个重要特征就是能够记住过去的经历,从中学习,并将这些经验应用到新的情况中。对于基于LLM的智能体而言,通常面临局限:对话状态的遗忘。人类记忆是一个多层级的认知系统,它不仅能存储信息,还能根据重要性、时间和上下文对信息进行分类和整理。认知心理学为理解记忆的结构和过程提供了经典的理论框架,如下图所示。则负责从用户提供的知识库中检索相关信息作为上下文,并可将重要的检索结果自动存储到记忆系统中。1.参考 hello-agents。

2026-04-03 16:37:53 506

原创 云服务器部署大模型

千问2.5-14B-Instruct。

2026-04-02 23:01:59 330

原创 【Claude Code】入门

【代码】【Claude Code】入门。

2026-03-29 21:48:08 529

原创 【PyTorch】2.0 入门学习

PyTorch是一个用于机器学习和深度学习的开源深度学习框架,由Facebook于2016年发布,其主要实现了自动微分功能,并引入动态计算图使模型建立更加灵活。Pytorch可分为前后端两个部分,前端是与用户直接交互的python API,后端是框架内部实现的部分,包括Autograd,它是一个自动微分引擎。

2026-03-17 22:56:27 226

原创 【FastAPI】入门(一)

FastAPI 是一个用于构建 API 的现代、快速(高性能)的 Web 框架,使用 Python 并基于标准的 Python 类型提示。快速:极高性能,可与 NodeJS 和 Go 并肩(归功于 Starlette 和 Pydantic)。最快的 Python 框架之一。高效编码:功能开发速度提升约 200% ~ 300%。更少 bug:人为(开发者)错误减少约 40%。直观:极佳的编辑器支持。处处皆可自动补全。更少的调试时间。易用:为易用和易学而设计。更少的文档阅读时间。

2026-03-15 23:03:48 317

原创 【提示词工程】Prompt实战项目

【代码】【提示词工程】Prompt实战项目。

2026-03-10 08:23:16 173

原创 【提示词工程】提示词Prompt的原理和优化

跟大模型说的每一句话都是Prompt,大模型就是在续写你给它的Prompt。提示(Prompt)是用来引导模型输出特定回答或者进行特定任务的一组词语。

2026-03-08 15:11:26 252

原创 【场景题】如何防止重复下单

普通的下单流程,首先会由用户发起一个下单操作,然后会由订单服务去保存一条订单信息,此时订单的状态是【未支付】,然后再由用户去确认订单。由支付服务把当前这条订单修改为【待支付】,然后再跳转到支付界面,接着由用户去选择对应的支付方式,来进行钱包支付。支付完成之后呢,由支付平台进行回调,回调到支付服务,再去调用订单服务,修改状态为【已支付】。当网络出现了阻塞用户不断点击下单按钮,出现了重复下单,应该如何去防止呢?核心点:token 必须“校验 + 删除”原子执行 否则会并发通过。存在则直接返回已有订单。

2026-02-26 22:36:48 1244

原创 Docker简单服务迁移

当前部署的服务是跑在Docker下的简单服务,目前需要迁移到另一台服务器上,这里做一个简单的迁移方法记录。首先将我们已经运行的服务(容器)保存成一个新的镜像,并打上版本号。

2026-01-28 20:38:16 429

原创 【All in RAG】检索增强生成 (RAG) 技术全栈指南(一)

RAG技术(检索增强生成)是大模型应用开发中必用技术之一,本文按照开源项目All in RAG 的目录进行学。

2026-01-13 15:23:16 518

原创 【场景题】为什么单表行数超过 500 万行或者单表容量超过 2GB,推荐分库分表

因为这是一个数量级风险< 100 万基本无风险100~300 万注意索引 & SQL300~500 万开始评估500 万+必须有预案1000 万+被迫拆< 100 万:基本无风险 ——「随便用」📌工程含义查询快写入快加索引随便加表结构改动随便来就算设计不太好,也能兜住就算你现在写的 SQL 有点烂,也不太会炸。100~300 万:注意索引 & SQL ——「开始要认真了」工程含义表已经不小了坏 SQL 开始显形少数全表扫描会被感知到。

2025-12-20 22:14:36 1214

原创 【MySQL】InnoDB记录存储结构

InnoDB 是一个将表中的数据存储到磁盘上的存储引擎,即使我们关闭并重启服务器,数据还是存在。而真正处理数据的过程发生在内存中,所以需要把磁盘中的数据加载到内存中。如果是处理写入或修改请求,还需要把内存中的内容刷新到磁盘上。而我们知道读写磁盘的速度非常慢,与读写内存差了几个数量级。当我们想从表中获取某些记录时,InnoDB 存储引擎需要一条一条地把记录从磁盘上读出来么?不,那样会慢死,InnoDB 采取的方式是,将数据划分为若干个页,以页作为磁盘和内存之间交互的基本单位。

2025-12-18 21:23:11 749

原创 下载Dokcer安装到另一台无网CentOS

✅ 在有网机器把 Docker 打成 rpm 包。3️⃣ 下载 Docker 离线安装包(不安装)2️⃣ 添加 Docker 官方 yum 源。✅ 拷贝到无网 CentOS 7。3️⃣ 启动并验证 Docker。4️⃣ 检查下载结果(很重要)2️⃣ 本地安装 rpm。5️⃣打包成一个压缩包。1️⃣ 安装下载工具。

2025-12-15 23:27:36 422

原创 【Spring Cloud Alibaba】SkyWalking 链路追踪

skywalking是一个国产开源框架,2015年由吴晟开源,2017年加入Apache孵化器。skywalking是分布式系统的应用程序性能监视工具,专为微服务、云原生架构和基于容器(Docker、 K8s、 Mesos)架构而设计。它是一款优秀的 APM (Application Performance Management)工具,包括了分布式追踪、性能指标分析、应用和服务依赖分析等。

2025-12-11 21:27:26 452

原创 【场景题】美团点评分布式ID生成系统

到目前为止业界一共有5种方式生成UUID,详情见IETF发布的UUID规范。性能非常高:本地生成,没有网络消耗。不易于存储:UUID太长,16字节128位,通常以36长度的字符串表示,很多场景不适用。信息不安全:基于MAC地址生成UUID的算法可能会造成MAC地址泄露,这个漏洞曾被用于寻找梅丽莎病毒的制作者位置。ID作为主键时在特定的环境会存在一些问题,比如做DB主键的场景下,UUID就非常不适用:① MySQL官方有明确的建议主键要尽量越短越好,36个字符长度的UUID不符合要求。

2025-12-10 22:28:18 827

原创 【Spring Cloud Alibaba】Gateway(一)

我们微服务的架构,就是将一个大的业务/服务,拆分成多个小的业务与服务。每个业务都会需要鉴权、限流、权限校验、跨域等逻辑,如果每个业务都各自为战,自己造轮子实现一遍,会很蛋疼,完全可以抽出来,放到一个统一的地方去做。

2025-12-05 14:00:57 601

原创 【场景题】慢SQL问题如何排查

❌ 因为使用了 LIKE “%xxx%” —— 左模糊匹配导致索引完全失效。👉 说明 mysqld 启动信息,版本 8.0.29。👉 锁等待时间几乎为 0,说明“不是锁导致的慢”。👉 SQL 执行耗时:37.04 秒(非常慢)。❗ 核心问题:why 需要扫描 2509 万行?👉 SQL 执行完毕的时间(UTC)。根据场景 我使用FULLTEXT。示例:开启MySQL慢查询日志。👉 扫描了 2509 万行!

2025-11-29 10:40:51 804

原创 【场景题】线上接口响应慢,应该如何排查问题?

排查线上接口响应慢问题应遵循"监控先行→定位→分析→优化"闭环方法论: 宏观定位:通过监控工具(Prometheus/SkyWalking)区分单接口或全局慢,分析RT/QPS/错误率趋势 链路追踪:使用SkyWalking/Zipkin精确定位耗时环节(DB/Redis/RPC等) 深入分析: 网络:检测延迟/丢包 中间件:排查MySQL锁/慢SQL、Redis大Key、MQ堆积 服务端:检查CPU/内存/IO瓶颈,JVM GC及代码热点(Arthas/jstack) 优化验证:针对性

2025-11-10 22:40:06 775

原创 【Arthas】基础使用

官方文档:Gthub:Arthas 是一款线上监控诊断产品,通过全局视角实时查看应用 load、内存、gc、线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参、异常,监测方法执行耗时,类加载信息等,大大提升线上问题排查效率。这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?

2025-11-02 20:11:33 1292

原创 【场景题】分布式锁都怎样实现

排在最前面的号,拥有取水权,就是一种典型的独占锁。另外,先到先得,号排在前面的人先取到水,取水之后就轮到下一个号取水,挺公平的,说明它是一种公平锁。在每一个节点下面创建临时顺序节点(EPHEMERAL_SEQUENTIAL)类型,新的子节点后面,会加上一个次序编号,而这个生成的次序编号,是上一个生成的次序编号加一。故事发生在一个没有自来水的古代,在一个村子有一口井,水质非常的好,村民们都抢着取井里的水。假定,取水时以家庭为单位,家庭的某人拿到号,其他的家庭成员过来打水,这时候不用再取号,如下图所示。

2025-10-30 20:06:09 828

原创 【场景题】List集合去重

必须正确实现 hashCode() 与 equals(),否则无法真正去重。Stream 是基于 “数据流管道(pipeline)” 的抽象实现。可以考虑分片去重(分批次放入 Set,再合并),降低内存峰值。每一层都是一个对象,每层都会包一层 lambda 表达式。,长度为 100 万,其中包含约 10% 的重复数据。速度更快,前提是去重像Integer这种简单数据。LinkedHashSet 是最优组合。数据流经时,这些层会逐一调用回调函数。当数据量 > 10^6 时。

2025-10-28 23:01:20 419

原创 【NebulaGraph】Nebula Importer使用

NebulaGraph Importer(简称 Importer)是一款 NebulaGraph 的 CSV 文件单机导入工具,可以读取并批量导入多种数据源的 CSV 文件数据,还支持批量更新和删除操作。支持多种数据源,包括本地、S3、OSS、HDFS、FTP、SFTP、GCS。支持导入 CSV 格式文件的数据。单个文件内可以包含多种 Tag、多种 Edge type 或者二者混合的数据。支持过滤数据源数据。支持批量操作,包括导入、更新、删除。

2025-10-22 23:21:01 1042

原创 【项目问题排查】孟小哥捉虫

本文系统介绍了项目问题排查的方法论与实践指南。首先从整体分析思路出发,提出技术栈排查命令、双重视角分析、常规排查流程和诊断工具分类的完整框架。重点阐述了日志查看技巧,比较了cat/head/tail/vim/less/more等命令的适用场景,特别推荐less命令处理大文件日志。详细讲解了grep命令的高级用法,包括实时过滤错误(-f)、排除特定内容(-v)、查看上下文(-A/-B/-C)以及倒序搜索(tac)等实用技巧,并强调--line-buffered参数对实时监控的重要性。文章通过可视化示意图和具体

2025-10-20 22:22:59 538

idea配置tomcat

idea配置tomcat

2022-06-20

空空如也

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

TA关注的人

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