<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[小小默：进无止境]]></title><description><![CDATA[QQ：1274654983 欢迎交流~~]]></description><link>https://blog.youkuaiyun.com/J080624</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; J080624]]></copyright><item><title><![CDATA[彻底搞懂 K8s 内部 DNS 解析：为什么跨 Namespace 访问不用加 `.svc.cluster.local`？]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/169945953</link><guid>https://blog.youkuaiyun.com/J080624/article/details/169945953</guid><author>J080624</author><pubDate>Tue, 03 Nov 2026 15:49:42 +0800</pubDate><description><![CDATA[Kubernetes 内部 DNS 通过 search 域实现跨 Namespace 简化访问。当使用 服务名.命名空间 格式时，因点数少于 ndots:5，系统会自动拼接 .svc.cluster.local，无需手动添加后缀。此方式简洁、可读性强，且不受集群域名变更影响，是官方推荐的跨命名空间调用标准。避免使用 xxx.local 等错误格式，排查连接失败问题应优先检查 Service 的端口与选择器配置。]]></description><category></category></item><item><title><![CDATA[从 Nacos 3.0.3 启动日志看架构演进：Server API 与 Console 分离实践]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/169260868</link><guid>https://blog.youkuaiyun.com/J080624/article/details/169260868</guid><author>J080624</author><pubDate>Tue, 27 Oct 2026 15:03:45 +0800</pubDate><description><![CDATA[Nacos 3.0.3 通过启动日志揭示架构演进：核心 Server、Server API（8848）与 Console（8080）模块分离，实现功能解耦。日志显示三者串行启动，确保注册配置能力优先就绪。集群模式依赖 Headless Service 的 publishNotReadyAddresses: true，健康探针需指向 8080 端口的 /v3/console/health。该设计支持安全隔离与灵活部署，对 K8s 部署提出精准探针配置、端口暴露及资源预留要求，显著提升运维可控性。]]></description><category></category></item><item><title><![CDATA[ClickHouse 存储策略实战解析：建表不写 storage_policy 会有坑吗？]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/169142941</link><guid>https://blog.youkuaiyun.com/J080624/article/details/169142941</guid><author>J080624</author><pubDate>Mon, 26 Oct 2026 10:09:56 +0800</pubDate><description><![CDATA[建表时不写 storage_policy 是否有坑，取决于集群配置。若仅有一个默认策略（default），不写无影响；但在多盘环境（如冷热分离）中，未指定策略可能导致数据错落磁盘，引发存储瓶颈甚至宕机。存储策略与分片键无关，前者决定数据落盘位置，后者决定数据分布节点。建议在分布式集群中显式声明策略以保证一致性。可通过 system.storage_policies 和 system.tables 查看当前配置，必要时使用 ALTER TABLE MODIFY SETTING storage_policy 安]]></description><category></category></item><item><title><![CDATA[RedisTemplate 序列化：默认值、七个坑与一套生产规范]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168857414</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168857414</guid><author>J080624</author><pubDate>Fri, 23 Oct 2026 10:31:50 +0800</pubDate><description><![CDATA[本文揭示RedisTemplate默认JDK序列化带来的七大隐患：key乱码、keys(pattern)失效、体积膨胀、跨语言不可读、与StringRedisTemplate隔离、Cluster多key操作风险及RCE漏洞。通过剖析序列化机制，提出生产级规范：统一使用GenericJackson2JsonRedisSerializer或StringRedisSerializer，禁用JDK序列化，配置serialVersionUID白名单，关键场景启用hash tag分槽，并强制部署层设置jdk.seria]]></description><category></category></item><item><title><![CDATA[使用 @SentinelResource 优雅保护第三方统一调用]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168555034</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168555034</guid><author>J080624</author><pubDate>Tue, 20 Oct 2026 16:12:21 +0800</pubDate><description><![CDATA[本文介绍如何使用 Sentinel 的 @SentinelResource 注解，优雅保护第三方接口统一调用。通过在 public 方法上添加注解，结合 Nacos 配置熔断规则，实现异常数触发的快速失败与自动恢复。关键点包括：共享资源名以统一熔断统计、使用 blockHandler 实现降级兜底、避免内部调用导致注解失效，并强调降级应抛出业务异常而非返回空值。实战中可通过制造异常验证熔断生效，确保高并发下服务稳定性。]]></description><category></category></item><item><title><![CDATA[SSE 实战：在 SpringBoot + Vue 项目中零依赖实现轻量级实时消息推送]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168334268</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168334268</guid><author>J080624</author><pubDate>Sun, 18 Oct 2026 12:14:31 +0800</pubDate><description><![CDATA[本文介绍在SpringBoot + Vue项目中，通过原生SSE实现轻量级实时消息推送的完整实践。基于“管理员发布资讯→用户实时弹窗”的需求，采用无依赖的SseEmitter方案，避开WebSocket与MQ，利用浏览器原生EventSource自动重连机制，实现服务器单向广播。文章详解SSE原理、协议格式、与轮询/WS对比，并重点剖析SseEmitter的线程模型、超时控制及内存泄漏防范，提供防阻塞、心跳保活、连接管理等实战技巧，为系统通知类场景提供高效、低耦合的解决方案。]]></description><category></category></item><item><title><![CDATA[A2A 与 MCP 双协议网关设计指南]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168331942</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168331942</guid><author>J080624</author><pubDate>Sun, 18 Oct 2026 11:05:30 +0800</pubDate><description><![CDATA[在A2A与MCP共存的项目中，网关设计需根据协议暴露方式选择形态：并列暴露（A）或双端点（B）时，需统一网关按路径分流，分别处理MCP（SSE长连接、工具限流）与A2A（防循环、委派链审计）；而内外分工（C）最常见且推荐——Agent对外仅暴露A2A，MCP内调不经过外网关，简化架构，避免过度设计。关键原则：先判断MCP是否对外暴露，再决定网关复杂度。]]></description><category></category></item><item><title><![CDATA[A2A第 6 篇：企业级 A2A 治理——注册中心、网关、安全、可观测]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168331855</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168331855</guid><author>J080624</author><pubDate>Sun, 18 Oct 2026 11:03:05 +0800</pubDate><description><![CDATA[本文系统阐述企业级A2A治理架构，针对多团队协作中的注册分散、鉴权混乱、审计缺失等痛点，提出“注册中心+网关”双核心方案。通过Agent Registry实现能力发现与健康监控，结合本地缓存与降级机制保障可用性；A2A Gateway统一处理鉴权、限流、路由及防循环委派，支持灰度发布与跨Agent审计。架构强调可扩展性与容错设计，为复杂A2A生态提供稳定治理底座。]]></description><category></category></item><item><title><![CDATA[A2A第 5 篇：A2A + MCP——Agent 既是 Server 也是 Client]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168331822</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168331822</guid><author>J080624</author><pubDate>Sun, 18 Oct 2026 11:02:06 +0800</pubDate><description><![CDATA[本文阐述Agent在真实系统中同时作为A2A Server（对外协作）与MCP Client（对内调用工具）的组合架构。通过清晰分层：协作层用A2A实现任务委派与多轮交互，工具层用MCP调用数据库、API等，业务层专注领域逻辑。强调“函数能力用MCP，思考能力用A2A”，避免反模式如将工具包装成A2A Agent。双协议下需分别保障安全边界，包括输入校验、权限控制与防循环。为支撑企业级应用，后续将引入注册中心、网关、可观测等治理机制，实现统一发现、鉴权、审计与成本管控。]]></description><category></category></item><item><title><![CDATA[A2A第 4 篇：多 Agent 协作——多轮、流式、推送、编排]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168331766</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168331766</guid><author>J080624</author><pubDate>Sun, 18 Oct 2026 11:00:59 +0800</pubDate><description><![CDATA[本文详解多 Agent 协作的六大核心能力：多轮交互（input-required）、流式输出、推送通知、Agent 编排及生产级容错机制。通过 taskId 保持上下文，实现跨轮次对话；利用流式事件实时反馈进度；支持超长任务异步回调；以 Orchestrator 实现多 Agent 并行调用与结果汇总，并引入背压、超时、重试等保障机制，构建可扩展、高可用的智能协作系统。]]></description><category></category></item><item><title><![CDATA[A2A第 3 篇：Java 实战——用官方 SDK 写第一个 A2A Agent]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168331683</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168331683</guid><author>J080624</author><pubDate>Sun, 18 Oct 2026 10:59:49 +0800</pubDate><description><![CDATA[本文基于A2A Java SDK，手把手实现首个A2A Agent：服务端声明销售查询技能，客户端发起任务并获取结果。涵盖代码结构、依赖配置、业务逻辑与测试用例，构建可运行的单任务闭环系统，为后续多轮协作与编排奠定基础。]]></description><category></category></item><item><title><![CDATA[A2A第 2 篇：A2A 核心概念——Agent Card、Task、Message、Artifact]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168331604</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168331604</guid><author>J080624</author><pubDate>Sun, 18 Oct 2026 10:58:21 +0800</pubDate><description><![CDATA[本文系统阐述A2A协议核心概念：通过Agent Card实现Agent的标准化描述与发现；以Task为单位管理任务生命周期，支持多轮协作；利用Message与Part灵活传递文本、文件、结构化数据；通过Artifact返回任务产出。结合JSON-RPC交互与规范状态机，构建可发现、可协作、可扩展的Agent间通信体系，助力开发者设计高效、兼容的智能代理能力。]]></description><category></category></item><item><title><![CDATA[A2A第 1 篇：认识 A2A——Agent 之间的 HTTP]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168331386</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168331386</guid><author>J080624</author><pubDate>Sun, 18 Oct 2026 10:55:52 +0800</pubDate><description><![CDATA[A2A（Agent2Agent Protocol）由Google联合50+企业于2025年4月发布，6月捐赠至Linux基金会，旨在标准化AI Agent间的发现、通信与协作。它作为Agent间“通用语言”，与MCP（Agent→工具）形成互补：前者为水平协作（Agent↔Agent），后者为垂直调用（Agent→资源）。核心原语包括Agent Card、Task、Message、Artifact等，基于HTTP+JSON-RPC 2.0实现，支持多轮、流式与编排。适用于多Agent协同场景，避免点对点胶水]]></description><category></category></item><item><title><![CDATA[MCP第 5 篇：用 Spring AI 写 MCP：注解、自动配置、ChatClient 集成]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168234168</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168234168</guid><author>J080624</author><pubDate>Sat, 17 Oct 2026 11:17:26 +0800</pubDate><description><![CDATA[本文介绍Spring AI如何集成MCP协议，实现注解式工具定义与自动配置。通过@Tool和@ToolParam注解简化工具开发，自动注册并支持多模态返回（如图片URL或Media对象），提升开发效率与多模态能力。相比原生SDK，代码更简洁、生态更完善，适用于Spring Boot项目中的Chat/RAG/Tool一体化应用。]]></description><category></category></item><item><title><![CDATA[MCP第 4 篇：把 MCP 暴露成 HTTP URL：对方只拿 url + token]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168234098</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168234098</guid><author>J080624</author><pubDate>Sat, 17 Oct 2026 11:16:00 +0800</pubDate><description><![CDATA[本文介绍将MCP服务暴露为HTTP URL的实践，解决stdio模式下代码泄露、版本失控等问题。通过Spring Boot配置域名、上下文路径与端点，实现统一鉴权、限流与升级。推荐使用单端点的Streamable HTTP替代旧版SSE，具备配置简单、自动降级、易扩展等优势，是2025年后新项目的首选方案。]]></description><category></category></item><item><title><![CDATA[MCP第 3 篇：一个工程多个能力：多 Tool、多 Server、多 module]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168234030</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168234030</guid><author>J080624</author><pubDate>Sat, 17 Oct 2026 11:14:59 +0800</pubDate><description><![CDATA[本文详解一个工程中实现多能力的实践，涵盖单 Server 多 Tool、Resource、Prompt 的注册方式，通过工厂方法批量构建工具以保持代码整洁。强调命名规范（如 领域_动作_对象）避免冲突，提出“一个工程多 Server”与“一个 Host 配多 Server”结合的生产架构，解决上下文膨胀与治理问题，助力设计跨销售、人事、财务等多领域的可扩展系统。]]></description><category></category></item><item><title><![CDATA[MCP第 2 篇：Java 本地实战：官方 SDK + stdio + 单能力 Server]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168233966</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168233966</guid><author>J080624</author><pubDate>Sat, 17 Oct 2026 11:13:59 +0800</pubDate><description><![CDATA[本文介绍如何用 Java 本地实现一个单能力 MCP Server，基于官方 SDK 构建 query_sales 工具，支持通过 java -jar 启动并接入 Claude Desktop。项目包含数据模型、业务服务、自测 Client 与单元测试，使用 Maven 打包为可执行 JAR，依赖简洁，日志不污染 stdio，提供完整可交付的 README，为后续多能力扩展打下基础。]]></description><category></category></item><item><title><![CDATA[MCP第 1 篇：认识 MCP：AI 世界的 USB-C]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168233896</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168233896</guid><author>J080624</author><pubDate>Sat, 17 Oct 2026 11:12:53 +0800</pubDate><description><![CDATA[MCP（模型上下文协议）是Anthropic推出的AI工具标准化协议，类比USB-C，解决AI客户端与外部能力连接的“胶水代码”痛点。其核心架构包含Host、Client、Server三角色，强调安全边界：Host控制调用权限，Server必须自主校验输入、控制权限、转义输出。主要暴露Tools、Resources、Prompts三类原语，推荐使用stdio（本地）或Streamable HTTP（远程）传输。本系列从入门到企业治理，逐步深入，助力开发者高效构建可复用、安全可控的AI能力服务。]]></description><category></category></item><item><title><![CDATA[MCP第 6 篇：Spring AI Alibaba 封装 MCP：注册中心、网关与企业治理]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168232429</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168232429</guid><author>J080624</author><pubDate>Sat, 17 Oct 2026 10:55:29 +0800</pubDate><description><![CDATA[本文介绍Spring AI Alibaba在企业级MCP架构中的应用，通过Nacos实现服务注册发现与配置管理，构建统一MCP网关，解决多团队、多Server场景下的治理难题。核心方案包括：基于Nacos的动态服务发现与本地缓存降级机制，以及具备鉴权、限流、路由、灰度和审计能力的MCP网关。针对MCP协议特性（如JSON-RPC、长连接），提出定制化网关设计，实现跨领域能力的统一接入与治理，支撑企业级AI服务规模化落地。]]></description><category></category></item><item><title><![CDATA[MCP 实战：从封装 Server 到客户端调用]]></title><link>https://blog.youkuaiyun.com/J080624/article/details/168230420</link><guid>https://blog.youkuaiyun.com/J080624/article/details/168230420</guid><author>J080624</author><pubDate>Sat, 17 Oct 2026 10:43:50 +0800</pubDate><description><![CDATA[MCP（模型上下文协议）是Anthropic推出的开放标准，实现AI客户端与外部工具的统一连接。本文以Python为例，演示如何将接口封装为MCP Server，通过FastMCP SDK暴露Tools、Resources和Prompts三类能力。核心要点：使用@mcp.tool()定义可调用函数，@mcp.resource()提供数据源，@mcp.prompt()配置模板；传输方式推荐Streamable HTTP。对比Function Calling与OpenAPI，MCP更聚焦AI场景下的发现与上下文]]></description><category></category></item></channel></rss>