自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Mac 本地项目推送至 GitHub 完整指南

第一步:检查本地 SSH 密钥macOS 默认 SSH 密钥路径为 ~/.ssh/id_rsa(私钥)和 ~/.ssh/id_rsa.pub(公钥)。

2026-07-09 09:47:22 249 4

原创 W55MH32 开发板 + 小智 AI实现以太网版本的小智机器人

项目开发团队建议保持 MCP 与 MQTT 开启,以获得完整的功能体验,若需要收听服务器返回的语音内容,则需启用 I2S 功能。智 - ESP32 是当前发展最快的 AI 项目之一,支持通过硬件终端与大语言模型(LLM)交互,可实现语音指令控制硬件等功能,自推出以来在物联网领域收获了极高的关注度与普及度。如果用户想了解 MCU 与服务器之间的通信原理,可查阅 xiaozhi-esp32 项目的文档目录,或访问小智 AI 聊天机器人百科,了解服务器与终端机器人的完整运行机制。

2026-07-09 09:46:44 253

原创 踩坑实录:读写分离导致批量删除逻辑问题

这是一个清理过期订单的定时任务,传入一个过期时间,每次查询前200个过期订单并根据ID进行删除。然而,在生产环境执行后,发现仍有过期订单存在。阿里云RDS的数据库代理地址开启读写分离功能后,会根据执行的SQL自动将请求分发到RDS的主节点或从节点,实现读写分离。从功能上看,先查询后删除的方式虽然不是最佳方案,但代码逻辑上确实看不出明显问题。经过反复分析,仍未能找出错误所在。,这看起来像是阿里云的代理链接地址。经检查,我们的数据库配置为一主一从,并启用了数据库代理的读写分离功能。突然注意到数据库连接地址为。

2026-07-08 13:16:39 178

原创 【从0到1构建一个ClaudeAgent】协作-自主Agent

所以引入了:扫描看板,认领任务。队友自己扫描任务板并认领任务,无需主 Agent 逐个分配。

2026-07-07 13:26:32 218

原创 并发编程核心概念辨析

当 CPU 执行写操作(Store)时,如果直接写入L1 Cache,由于多核之间的“缓存一致性协议(如MESI)”,CPU 必须等待其他核心确认并作废它们对应的缓存行,这个等待过程比较漫长(CPU 视角)。,编译器会根据当前的 CPU 架构(x86 还是 ARM),自动帮你翻译成对应架构的内存屏障指令(Memory Barrier)。现在,在没有让我看到你写的值的情况下,你先执行了后面的 load 指令,那对我来说,你就是。这使得某些情况下,某个线程看到的数据,可能是非预期的,进而导致程序出现逻辑错误。

2026-07-07 13:23:52 191

原创 【监控报警体系建设】监控标准与最佳实践

如果监控类型是timer,则需要配置avg,tp50,tp90,tp99,tps,在同一个图中,左边y轴为耗时,右边y轴为次数。项目需要提供http接口供普罗米修斯拉取监控数据,需要提供http接口给运维配置到普罗米修斯上。spring boot项目一般引入actuator包,然后配置以下配置提供http接口。假设监控的key是GET__api_v1_order则配置如下。如果是counter类型的监控则只有tps。平均值和tp50,tp90和tp99配置。将重要和关键的监控单独分组。

2026-07-06 13:17:05 233

原创 桌面应用 P2P 分发加速实践:从消费端到发布端的全链路打通

桌面应用的大文件分发是个经典难题,P2P 技术提供了一种优雅的解决方案。降低分发成本:P2P 分担了服务器带宽压力,高峰期也能保持稳定的分发能力。这其实也算是个不错的收益,毕竟能省点带宽钱也是好的。提升用户体验:有 P2P 连接时下载速度显著提升,尤其是海外用户。没有 P2P 连接时也能通过 HTTP 正常下载,保证 100% 可用性。这其实也算是个不错的策略,毕竟用户体验才是最重要的。

2026-07-06 13:16:33 244

原创 LangChain 入门 Agent 的基本运行机制

Agent 的核心能力之一是 Tool Calling(工具调用)。# 2. 定义工具# 定义一个工具,其实就是定义一个方法通过 @tool 进行修饰@tool"""通过调用第三方接口,将天气进行返回"""print(f"正在查询{city}天气...")return f"{city}今天是晴天,气温25度"

2026-07-05 13:03:06 224

原创 Harness Engineering:把 AI 真正接进工程流程

可以把 Harness Engineering 理解成给 AI 搭一套“任务运行框架”。在这套框架里,AI 不再只是被动响应问题,而是要在明确目标、范围、上下文、工具和验收标准的前提下完成任务。任务有没有被定义清楚项目背景有没有被准确提供AI 能调用哪些工具,边界在哪里执行是否遵循固定流程结果有没有经过真实验证成功经验能不能复用所以,AI 是执行者,Harness 是执行环境。没有 Harness,AI 更像一次临场发挥;

2026-07-05 13:02:31 197

原创 TIG*算法的基本原理和仿真

回到顶部。

2026-07-04 13:18:53 150

原创 AI Agent 30天速成|Day7 笔记

Chroma支持磁盘持久化、元数据过滤、MMR去重、异步客户端、多集合隔离;适合单机本地RAG学习/小型业务落地。网关统一封装SigLIP向量化、Chroma检索、元数据过滤逻辑,上层ReAct Agent无需关心图文底层差异。Day3 FAISS仅内存存储,重启丢失向量、无元数据、不支持过滤、无内置去重逻辑;FAISS仅内存存储、无元数据、无过滤、无MMR;适合临时测试小批量向量。传统文本Embedding只能编码文字;SigLIP/CLIP构建。在Day6网关基础上新增。用户提问(支持图文描述)

2026-07-04 13:18:04 283

原创 从零实现富文本编辑器#13-React非编辑节点的内容渲染

然而,在实现诸如超链接、引用块这些需要组合类型的插件时,就需要特殊处理,这些类型的节点不需要持有状态,只需要在渲染时根据状态来渲染即可。不过在实际应用中,暂时还没有需要的场景,因此这里还没有实现,当前主要是在视图只读状态变化之后,设置编辑器的只读状态,而没有触发相关事件。特别是,如果是加粗或者斜体等样式,那么就会出现拆离内容的情况,虽然并不会造成特别大的影响,但是体验上会稍显差一些,例如。那么这种情况下就变的简单了很多,我们将其认为是一个组合值,而不是单独的值,在大部分场景下是足够的。节点渲染到该节点上。

2026-07-03 13:36:02 171

原创 Claude Code Buddy 小析:一个非核心功能,如何体现产品的细节完成度

图 2:Buddy 的数据模型将可重建的骨架(Bones)与可持久化的灵魂(Soul)拆开,使角色身份稳定、配置更安全,也降低了后续演化成本。它可以在场、可以互动,但不会接管主回复,也不会与主工作流争夺注意力。Buddy 的另一个成熟之处,是它并不是一个简单覆盖在界面角落的视觉元素,而是正式参与了输入区的宽度计算。从源码设计看,Buddy 并不是另一个完整的 Agent,也不是主 Assistant 的第二人格。Buddy 看起来“像活着”,并不是因为它有多复杂的图形系统,而是因为它的节奏处理很到位。

2026-07-03 13:35:16 238

原创 替换算法、虚拟存储器、TLB、RAID

虚拟存储器是处于主存和辅存这个层次的,主要作用是解决主存容量不足的问题,为程序设计者提供比主存空间大的编程空间,主要分为以下3类:①、页式虚拟存储器;②、段式虚拟存储器;③、段页式虚拟存储器。

2026-07-02 13:56:34 195

原创 】[RadiansToDegrees节点]原理解析与实际应用

则是将圆周等分为360份的传统角度单位。在着色器编程中,三角函数如sin、cos、tan等通常使用弧度作为输入参数,但在美术设计和直观理解上,度往往更加友好。Radians To Degrees节点正是为了弥合这两种单位系统之间的差距而设计的。理解这个节点的工作原理和应用场景,对于创建复杂而精确的着色器效果具有重要意义。无论是旋转动画、光照计算还是几何变换,正确的角度单位转换都是确保效果准确性的基础。

2026-07-02 13:55:52 161

原创 吃透 Spring AI Alibaba 多智能体|四大协同模式+完整代码

Override// 从每个Agent的状态中提取输出// 检查key不为null且以"_result"结尾if (key!你是一个智能的内容路由Agent,负责根据用户需求将任务路由到最合适的专家Agent。## 你的职责1. 仔细分析用户输入的意图和需求2. 根据任务特性,选择最合适的专家Agent3. 确保路由决策准确、高效## 可用的子Agent及其职责- **功能**: 擅长创作各类文章,包括散文、诗歌等文学作品。

2026-07-01 13:30:54 290

原创 OpenClaw Ubuntu 部署经验总结

OpenClaw 依赖 Node.js 22+,推荐通过 NVM(Node Version Manager)进行管理,方便后续切换版本。在配置飞书 IM 集成时,由于一直配置不成功,想跳过该步骤,但配置流程不允许退出。命令,因 Gateway 根本未完成初始化,导致完全无法进入后台。确保系统处于最新状态,避免后续因依赖版本过旧导致安装失败。在已正常运行的环境中,若通过 OpenClaw 自带功能。,这是整个系统能否正常运行的关键步骤。模式会自动完成一系列配置操作,安装完成后,系统会提示选择。

2026-06-30 22:05:22 196

原创 基于.NET的Windows窗体编程之WinForms入门简介

于.NET的Windows窗体编程,就是我们常说的WinForms编程,它一个基于.NET的UI框架,用于创建适用于 Windows 的丰富桌面客户端应用,Windows窗体开发平台支持广泛的应用开发功能,包括控件、图形、数据绑定和用户输入。对于Windows窗体编程,微软也提供了Visual Studio这一开发神器,通过Visual Studio的可视化控件拖放等功能可以轻松构建桌面应用。在Windows窗体中。

2026-06-30 22:03:50 218

原创 Google AX 控制面拆解:分布式 Agent 如何把断点恢复、审计策略和执行调度收进同一条链路

​​。你可以把它理解成:上面接各种 Agent 形态,下面落到真实执行环境,中间用一条的执行链把事情串起来。

2026-06-29 14:17:28 178

原创 用SymPy自动求解追及问题的方程

SymPy可以让我们用符号把追及问题“翻译”成方程,然后自动求解。# 符号定义:t 为乙出发后经过的时间v1, v2 = 2, 5 # 速度s0 = 10 # 初始距离(甲在乙前面10米)# 甲的位置:先出发0秒(即同时出发),位置 = s0 + v1*t# 乙的位置:从0开始,位置 = v2*t# 相遇条件:位置相等# 输出: [10/3]t_delay = 2 # 甲早出发2秒pos1 = s0 + v1 * (t + t_delay) # 甲多走2秒# 输出: [14/3]

2026-06-29 14:16:47 154

原创 dubbo服务调用源码

进入到FailoverClusterInvoker类之前先进入到AbstractClusterInvoker类中java// 筛选出合适的invokers列表,基于方法和路由信息// 其中路由信息则是通过MockInvokersSelector类处理获取到invocation中attachments保存的mock信息去筛选合适的invoker,所以重点是筛选// 调试发现,一般情况下在这里面attachments字段并没有数据} else {

2026-06-28 14:11:10 186

原创 《觉醒时刻:AI Agent引爆企业效率革命》第二章

AI不是一场必须赢的战争,但它是一场你迟早要参加的赛跑。你现在不跑,不等于永远不会跑。但现在跑一步,胜算就多一分。四座大山是真的存在的,但山也是可以翻的。翻山不需要移山——你不需要改变整个企业的技术架构、不需要换掉所有系统、不需要招一大堆AI天才。你需要的,是找一个够痛的场景、搭一层Agent壳、选一个靠谱的伙伴、培养一个"AI翻译官"。

2026-06-28 14:09:41 224

原创 明明连接的是Redis的DB0,为什么能查到DB3的数据?

生产环境会追求 Redis 高性能的同时,还会要求其高可用,往往会采用集群模式部署。但有时候,服务器资源确实不充裕,那么开发环境与测试环境往往会共用一套 Redis 集群,用数据库隔离;有些时候为了节省资源,开发环境与测试环境会共用 Redis,用不同的库进行隔离,比如开发环境用。我们用同个应用,用开发配置启动一个实例,用测试配置也启动一个实例,看彼此之间是否做到数据隔离了。开发、测试、生产,环境尽量保持一致,因为环境不一致导致的问题,排查起来真的很头疼!Redis 集群不像单机,它不支持多数据库;

2026-06-23 09:53:33 187

原创 HTTPS 粗解:证书、TLS 握手与对后端配置的影响

或容器镜像层统一管理。

2026-06-23 09:52:53 192

原创 .NET 高级开发 | .NET 中的序列化和反序列化

其实,使用默认的 json 时间格式是一个很好的习惯。下面,笔者来设定一个场景,就是使用 Utf8JsonReader 来实现读取 json 文件,将读取到的字段全都存到字典中,如果有多层结构,则使用 : 拼接层级,生成 IConfiguration 中的能够直接读取的 key/value 格式。要实现字符串转数值,需要考虑很多种数值类型,如 byte、int、double、long 等,从值类型转换为字符串是很简单的,但是要实现一个字符串转任意类型值类型,那就很麻烦,这也是我们编写转换器的重点。

2026-06-22 20:58:58 189

原创 FastAPI + Vue 前后端分离实战:我的项目结构“避坑指南”

张花了一周写完FastAPI接口,用Postman测试全部通过,美滋滋地去睡了个好觉。第二天起床,信心满满地启动Vue项目,npm run dev,然后……控制台一片红:Access-Control-Allow-Origin 错误。赶紧上网搜,装了个flask-cors?不对,我是FastAPI。手忙脚乱加上CORSMiddleware,跨域是解决了,但POST请求又报422 Unprocessable Entity——前端传的JSON格式后端不认。你可能会问:不就是配置个代理、写个接口吗?错!

2026-06-22 20:58:08 195

原创 FastAPI子应用挂载:别再让root_path坑你一夜

其实,搞懂 root_path 和挂载,本质上就是理解“代码中的路径”和“实际对外路径”的映射关系。很多新人一上来就想着用中间件硬改,绕远了。只要抓住“让框架知道真实根路径”这个核。

2026-06-21 23:01:13 175

原创 彻底搞懂 fcntl/pipe/dup/CGI/mmap/sendfile/splice/tee 的底层逻辑

CGI(通用网关接口)是早期Web服务器实现动态内容的标准方案。它的核心逻辑很简单:Web服务器收到客户端的动态请求后,fork一个子进程执行CGI程序(可以是C、Python、Shell脚本等任意可执行文件),把HTTP请求通过标准输入传给CGI程序,CGI程序执行完成后,把HTTP响应通过标准输出返回给Web服务器,最终由Web服务器返回给客户端。基础能力层:fcntl(fd控制) → readv/writev(基础I/O优化)

2026-06-21 23:00:26 386

空空如也

空空如也

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

TA关注的人

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