<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[yxl219的专栏]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/yxl219</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; yxl219]]></copyright><item><title><![CDATA[SpringAI+RAG-先跑通一条线：文档读取第一期的取舍之道]]></title><link>https://blog.csdn.net/yxl219/article/details/165879237</link><guid>https://blog.csdn.net/yxl219/article/details/165879237</guid><author>yxl219</author><pubDate>Fri, 18 Sep 2026 14:51:31 +0800</pubDate><description><![CDATA[本文阐述文档读取第一期的方案与关键取舍：聚焦 md、txt 格式，采用三段式 ETL 流程（提取、切片、向量化），选用 PgVector 存储，通过 X-User-Id 实现用户隔离。接口设计简洁，数据分库存储，验收标准可量化。强调“先跑通一条线”——控制范围、验证闭环，避免过早扩展导致失控。核心是用最小可行链路验证可行性，为后续迭代打下坚实基础。]]></description><category></category></item><item><title><![CDATA[SpringAI+RAG-别再一次喂80个切片：批处理策略避坑指南]]></title><link>https://blog.csdn.net/yxl219/article/details/165878723</link><guid>https://blog.csdn.net/yxl219/article/details/165878723</guid><author>yxl219</author><pubDate>Fri, 18 Sep 2026 14:45:09 +0800</pubDate><description><![CDATA[Spring AI批处理策略通过BatchingStrategy将大批文档按token和条数上限分批，避免嵌入模型超限导致数据丢失。关键在于组合使用TokenCountBatchingStrategy与CountLimitedBatchingStrategy，双重保障请求不超长、不超量。配置max-input-token-count与max-document-batch-size并验证请求次数与数据完整性，确保“无报错但数据完整”。]]></description><category></category></item><item><title><![CDATA[不会鸿蒙？靠AI硬啃出鸿蒙版（Android到鸿蒙-VibeCoding迁移实录）]]></title><link>https://blog.csdn.net/yxl219/article/details/165745622</link><guid>https://blog.csdn.net/yxl219/article/details/165745622</guid><author>yxl219</author><pubDate>Thu, 17 Sep 2026 15:09:09 +0800</pubDate><description><![CDATA[不会鸿蒙也能完成项目迁移：作者零基础靠“vibecoding”模式，结合AI辅助，历时三个月将「子午流注」Android项目成功移植至鸿蒙。核心策略包括：先评估工程规模、拒绝逐文件翻译、按优先级分阶段重构；遵循ArkTS语法规范，重写UI与系统调用逻辑；以产品+测试角色主导，AI负责编码与调试。关键突破在于建立“计划-发现-进度”三文件体系，解决AI记忆缺失问题。最终交付18页、1.7万行代码，实现登录、支付、三维经络等全功能，验证了“不会鸿蒙≠无法交付”，核心瓶颈在于上下文表达而非技术本身。]]></description><category></category></item><item><title><![CDATA[7.秒杀接口安全升级：临时地址+限流+验证码]]></title><link>https://blog.csdn.net/yxl219/article/details/165601437</link><guid>https://blog.csdn.net/yxl219/article/details/165601437</guid><author>yxl219</author><pubDate>Wed, 16 Sep 2026 11:44:50 +0800</pubDate><description><![CDATA[本文提出基于临时地址的秒杀接口优化方案，通过生成绑定用户与商品的60秒有效、一次性使用的随机路径，隐藏真实接口，防止恶意攻击。结合Redis高效验证与自动失效机制，提升安全性与性能。辅以限流、验证码及Lua脚本保障高并发下的稳定性，实现安全、高效、可扩展的秒杀系统。]]></description><category></category></item><item><title><![CDATA[6.秒杀页面开发：路由+倒计时+库存同步]]></title><link>https://blog.csdn.net/yxl219/article/details/165442026</link><guid>https://blog.csdn.net/yxl219/article/details/165442026</guid><author>yxl219</author><pubDate>Tue, 15 Sep 2026 09:56:04 +0800</pubDate><description><![CDATA[用户登录后自动跳转至商品秒杀页面，系统通过Vue Router实现路由控制与权限校验。页面包含秒杀倒计时、专属商品展示区及商品列表，清晰呈现商品名称、图片、原价、秒杀价与库存。采用响应式设计，支持秒杀按钮点击与库存实时更新，保障高并发场景下的用户体验与数据一致性。]]></description><category></category></item><item><title><![CDATA[SpringAI+RAG-检索文档变知识：从上传到精准检索的完整链路]]></title><link>https://blog.csdn.net/yxl219/article/details/165438679</link><guid>https://blog.csdn.net/yxl219/article/details/165438679</guid><author>yxl219</author><pubDate>Tue, 15 Sep 2026 09:39:40 +0800</pubDate><description><![CDATA[本文介绍如何将md/txt文档转化为可检索的知识库，通过ETL流程实现：读取（Extract）、切片（Transform）、向量化存储（Load）。重点解决切分粒度、元数据打标、去重与异步处理，确保检索精准。采用确定性ID生成与权限过滤，保障安全与一致性，最终实现高效、低成本的RAG问答系统。]]></description><category></category></item><item><title><![CDATA[零基础快速上手Trae创建Java项目]]></title><link>https://blog.csdn.net/yxl219/article/details/165299685</link><guid>https://blog.csdn.net/yxl219/article/details/165299685</guid><author>yxl219</author><pubDate>Mon, 14 Sep 2026 12:01:25 +0800</pubDate><description><![CDATA[本文介绍在 Trae IDE 中创建Java项目的完整流程：需安装JDK 17+并配置环境变量，下载安装Trae后，通过扩展市场安装“Extension Pack for Java”以获得完整开发支持。使用命令面板选择“无构建工具”创建项目，配置JDK路径后，可运行默认的Hello World程序，并自定义源文件进行开发。关键步骤包括项目结构理解、JDK环境校验及运行调试，适用于初学者快速上手Java开发。]]></description><category></category></item><item><title><![CDATA[对话记忆持久化-Redis热与MySQL冷]]></title><link>https://blog.csdn.net/yxl219/article/details/165293411</link><guid>https://blog.csdn.net/yxl219/article/details/165293411</guid><author>yxl219</author><pubDate>Mon, 14 Sep 2026 10:42:14 +0800</pubDate><description><![CDATA[对话记忆持久化需兼顾“快”与“不丢”：以Redis为缓存（冰箱）实现低延迟读写，MySQL为持久存储（仓库）保障数据不丢失。采用分层策略（Tiered），写时先落库再更新缓存，读时优先查Redis，失效则回源MySQL并回填。配置灵活，支持热切换；实测验证了缓存失效后仍可恢复历史。关键点：先写库、后写缓存，避免数据丢失；合理设置窗口大小与TTL，兼顾成本与体验。]]></description><category></category></item><item><title><![CDATA[AI多轮记存储-MySQL持久化与建表实践]]></title><link>https://blog.csdn.net/yxl219/article/details/165006937</link><guid>https://blog.csdn.net/yxl219/article/details/165006937</guid><author>yxl219</author><pubDate>Sat, 12 Sep 2026 09:45:00 +0800</pubDate><description><![CDATA[数据库接不上，先分清三层：驱动负责通话，starter 负责连接池和工具，schema.sql负责建表。三层缺一层，都会表现成“什么都没发生”。密码走环境变量，建表用幂等语句，启动看日志。做到这三条，数据库这块基本不会给你添乱。先看日志，别慌，问题不大。]]></description><category></category></item><item><title><![CDATA[让 AI 记住你上一句：老码拆一套能落地的多轮记忆架构]]></title><link>https://blog.csdn.net/yxl219/article/details/164954493</link><guid>https://blog.csdn.net/yxl219/article/details/164954493</guid><author>yxl219</author><pubDate>Fri, 11 Sep 2026 09:10:16 +0800</pubDate><description><![CDATA[本文基于Spring Boot + Spring AI + DeepSeek + MySQL，实现恋爱咨询应用的多轮记忆架构。核心思路：数据库全量存储聊天记录，仅向模型传递最近20条历史消息，确保记忆准确且成本可控。通过自定义MySQLChatMemory与MessageChatMemoryAdvisor，实现会话状态管理、历史分页读取及角色还原。强调“存全量、喂窗口”原则，避免官方记忆窗口覆盖历史的问题。实测表明模型能准确延续上下文，关键在于sessionId传递与分层设计。后续可拓展摘要、RAG等能力。]]></description><category></category></item><item><title><![CDATA[Spring AI 接 DeepSeek：从配置到跑通，老码带你走一遍]]></title><link>https://blog.csdn.net/yxl219/article/details/164953839</link><guid>https://blog.csdn.net/yxl219/article/details/164953839</guid><author>yxl219</author><pubDate>Fri, 11 Sep 2026 09:05:47 +0800</pubDate><description><![CDATA[本文以实战视角详解如何用Spring AI 1.0.0在Spring Boot 3.4.4中快速接入DeepSeek模型。通过引入spring-ai-bom统一管理版本，配置base-url为DeepSeek地址、模型名为deepseek-chat，并使用ChatClient实现多轮对话与记忆管理。强调关键点：API Key走环境变量、避免硬编码、注意流式输出与SSE的差异。结合四步配置、连通性验证与分层测试，确保链路稳定。最后提醒工程规范：配置分离、日志脱敏、泄露即换Key。整体实现简单高效，核心在于良好]]></description><category></category></item><item><title><![CDATA[Spring AI+RAG 01-项目背景与技术选型]]></title><link>https://blog.csdn.net/yxl219/article/details/164868664</link><guid>https://blog.csdn.net/yxl219/article/details/164868664</guid><author>yxl219</author><pubDate>Thu, 10 Sep 2026 18:03:23 +0800</pubDate><description><![CDATA[本文复盘了一个Java AI项目的技术选型与工程实践：基于Spring Boot 3.4.4和Java 17搭建稳定底座，优先选用Spring AI降低接入成本，辅以LangChain4j对比验证；通过AI恋爱大师业务实现多轮会话、记忆存储与MySQL落地；结合AOCI认知索引沉淀工程知识。强调“不折腾”原则，避免双框架并存，注重配置安全、版本兼容与可维护性，最终构建一条贯通模型调用、数据持久化与文档认知的完整技术链路。]]></description><category></category></item><item><title><![CDATA[OpenMAIC 接入小米 MiMo TTS 语音合成]]></title><link>https://blog.csdn.net/yxl219/article/details/164863072</link><guid>https://blog.csdn.net/yxl219/article/details/164863072</guid><author>yxl219</author><pubDate>Thu, 10 Sep 2026 16:53:51 +0800</pubDate><description><![CDATA[本文记录了将小米 MiMo-V2.5-TTS 接入 OpenMAIC 的完整过程。针对其非标准 OpenAI 兼容协议（使用 chat/completions 传音频），通过改造类型定义、注册表及 TTS 实现，实现模型与9种预置音色的集成。支持中英文音色选择、试听功能，并基于文本指令实现语速与风格控制，最终在课堂语音讲解中可用。]]></description><category></category></item><item><title><![CDATA[5.3解决超卖问题]]></title><link>https://blog.csdn.net/yxl219/article/details/164862814</link><guid>https://blog.csdn.net/yxl219/article/details/164862814</guid><author>yxl219</author><pubDate>Thu, 10 Sep 2026 16:51:07 +0800</pubDate><description><![CDATA[增加redis缓存对将秒杀订单写入redis,避免用户重复秒杀。优化TOrderServiceImpl中，判断更新库存条件。]]></description><category></category></item><item><title><![CDATA[5.2 秒杀接口优化-RabbitMQ Topic模式异步下单实现逻辑]]></title><link>https://blog.csdn.net/yxl219/article/details/164862756</link><guid>https://blog.csdn.net/yxl219/article/details/164862756</guid><author>yxl219</author><pubDate>Thu, 10 Sep 2026 16:50:33 +0800</pubDate><description><![CDATA[前端 ：用户发起秒杀请求后立即返回排队状态，提升用户体验后端 ：通过消息队列异步处理下单逻辑，避免系统崩溃可靠性 ：多重校验确保不超卖、不重复下单扩展性 ：Topic模式的路由规则便于后续功能扩展这是一张图片，ocr 内容为：完成代码在com.yxl.seckill.entity 包下创建SeckillMessage消息传输类。Data;@DataTSeckillOrderController  实现接口类 InitializingBean  进行库存初始化。]]></description><category></category></item><item><title><![CDATA[5.1 整合RbbitMQ]]></title><link>https://blog.csdn.net/yxl219/article/details/164862668</link><guid>https://blog.csdn.net/yxl219/article/details/164862668</guid><author>yxl219</author><pubDate>Thu, 10 Sep 2026 16:50:05 +0800</pubDate><description><![CDATA[RbbitMQ 是一个消息代理：它接收并转发消息。你可以把它想象成一个邮局：当你把想要寄出的邮件放进邮箱时，你可以确信邮递员最终会将邮件送到你的收件人手中。在这个比喻中，RabbitMQ 就是邮箱、邮局和邮递员。RabbitMQ 和邮局的主要区别在于，它不处理纸张，而是接收、存储和转发数据的二进制数据块——消息。RabbitMQ 和消息传递通常会使用一些行话。发送无非就是发送。发送消息的程序就是生产者。队列是 RabbitMQ 中邮箱的名称。]]></description><category></category></item><item><title><![CDATA[5.java秒杀项目第五课-商品秒杀后台接口]]></title><link>https://blog.csdn.net/yxl219/article/details/164862554</link><guid>https://blog.csdn.net/yxl219/article/details/164862554</guid><author>yxl219</author><pubDate>Thu, 10 Sep 2026 16:48:41 +0800</pubDate><description><![CDATA[✅ 原子性减库存 - 通过 SQL 语句保证库存扣减的原子性，防止超卖✅ Redis 防重 - 利用 Redis 快速判断用户是否已抢购，减轻数据库压力✅ 多级校验 - Controller 层先做库存和重复抢购预检，减少无效请求。]]></description><category></category></item><item><title><![CDATA[4.java秒杀项目第四课-后端商品后台接口]]></title><link>https://blog.csdn.net/yxl219/article/details/164862463</link><guid>https://blog.csdn.net/yxl219/article/details/164862463</guid><author>yxl219</author><pubDate>Thu, 10 Sep 2026 16:47:46 +0800</pubDate><description><![CDATA[在后台的Controller中对于需要登录权限的访问接口都要先获取Cookie中的Token，再使用Token从session中获取用户登录信息来判断用户登录情况决定是否放行。命名空间关联（Namespace）： 在 TGoodsMapper.xml 文件中，根元素  的 namespace 属性设置为 com.yxl.seckill.mapper.TGoodsMapper，这正好对应于 TGoodsMapper.java 接口的全限定名。只需要在这个方法中进行处理即可。]]></description><category></category></item><item><title><![CDATA[4.1 JMeter 压测工具使用]]></title><link>https://blog.csdn.net/yxl219/article/details/164862237</link><guid>https://blog.csdn.net/yxl219/article/details/164862237</guid><author>yxl219</author><pubDate>Thu, 10 Sep 2026 16:45:54 +0800</pubDate><description><![CDATA[是一款基于 Java 的开源工具，专为负载测试和性能测试设计。最初用于测试 Web 应用程序，但现已扩展到其他测试功能。它支持多种协议和应用类型，包括 HTTP、HTTPS、SOAP、REST、FTP、数据库、LDAP 等，适用于静态和动态资源的性能测试。JMeter 提供了强大的功能，包括多线程框架、动态 HTML 报告生成、数据分析插件以及脚本化采样器（支持 Groovy 和 BeanShell）。它还支持通过命令行模式进行无界面测试，适用于各种操作系统。]]></description><category></category></item><item><title><![CDATA[OpenMAIC 运行踩坑与经验]]></title><link>https://blog.csdn.net/yxl219/article/details/164807790</link><guid>https://blog.csdn.net/yxl219/article/details/164807790</guid><author>yxl219</author><pubDate>Thu, 10 Sep 2026 09:47:12 +0800</pubDate><description><![CDATA[本文总结 OpenMAIC（Next.js 16 多智能体课堂）从源码运行到部署的实战经验，重点解决环境配置、依赖冲突与构建报错问题。核心要点：必须使用 pnpm 安装以正确构建 workspace 包；统一 tailwindcss 版本避免扫描器冲突；升级 @langchain/core 和 @types/node 解决模块缺失与类型错误；清理 .next 及缓存目录可修复路径残留问题；配置 .env.local API Key 才能启用 LLM 功能。强调开发中应严格遵循 pnpm 工具链，确保生产构建]]></description><category></category></item></channel></rss>