Jacobc' Blog

纵有疾风起,人生不言弃

服务报警治理方案

项目报警治理方案 根据我对项目的深入分析,发现当前项目存在以下主要问题: 1. 当前问题分析 主要错误来源: 数据库连接和查询错误:GORM慢查询、连接超时 外部服务调用失败:企微、飞书、钉钉等第三方API调用 消息队列处理异常:NSQ消费者处理失败 业务逻辑异常:数据验证、格式转换错误 系统级错误:panic恢复、内存不足等 当前错误处理特点:

从“人写代码”到“人与智能体共工程”:一份面向工程实践的《Agentic Software Engineering》深度解读

从“人写代码”到“人与智能体共工程”:一份面向工程实践的《Agentic Software Engineering》深度解读 原文:Ahmed E. Hassan et al. Agentic Software Engineering: Foundational Pillars and a Research Roadmap, 2025 1. 为什么你现在就该关心 Agentic SE? 过去 18 个月,GitHub Copilot、Claude Code、Google Jules、Cognition Devin 等“AI 队友”已经在开源仓库里提交了数十万合并 PR。 Jeff Dean 预测:一年内 AI 就将达到“初中级开发者”水平。 然而,真正让 CTO 们夜不能寐的,并不是“AI 会不会写代码”,而是——

MySQL 报错:Prepared statement contains too many placeholders 解决

通过报警遇到一个接口报错,具体报错信息是 failed: users get one failed: Error 1390 (HY000): Prepared statement contains too many placeholders 根据报警日志,找到对应代码位置(DAO 层代码,业务无关): func (userDAO) GetAllByUserIds(ctx context.Context, uids []int) ([]model.User, error) { dbSession := dbConn.WithContext(ctx) var users []model.User err := dbSession.Model(&model.User{}).Where("id in ?", uids).Find(&users).Error return users, err } 定位到问题代码,发现 uids 是一个切片,里面存放了 16w 个用户 id,sql 用的 in 语句

一些功能、工具记录

关于工具 tableflip 优雅热升级工具 singleflight 防缓存击穿利器 loongsuite-go-agent Go 应用自动获得全链路可观测能力 传送门 关于功能 流程编排 rulego go-workflow 上线发布系统 Spug SQL 审核系统 hhyo/Archery 多 Agent crewai.com metaAI Parlant 是可控 LLM 代理框架,解决大模型输出不稳定的问题。适合做客服机器人、任务助手这类需要精确控制的场景,不是纯聊天而是能干活的 AI Agent API 测试工具 hoppscotch 是开源版 Postman,支持 REST、GraphQL、WebSocket。有 Web、桌面、CLI 版本,可以自己部署,数据完全本地化,适合企业内网。更新很活跃。 浏览器 Ladybird 是真从零写的独立浏览器,不是 Chromium 换皮。从 SerenityOS 分出来的,成立了非营利组织,承诺不搞商业化套路。8 个全职工程师,2026 年夏天 Alpha 版本 水印 blind_watermark 是个 Python 盲水印库,核心亮点是不需要原图就能提取水印。做版权保护、图片溯源的兄弟们可以用这个给图片加暗水印

VSCode ssh-remote 连接不上问题

背景 官方问题 传送门,发现是远程机器有一些需求,下面先列一下: kernel >= 4.18, glibc >=2.28, libstdc++ >= 3.4.25, Python 2.6 or 2.7, tar 然后是通过下面的命令,可以检查上面这些需求的版本 Run ldd –version to check the glibc version. Run strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX to see if libstdc++ 3.4.25 is available. 检查后发现 glibc 2.29 符合要求,libstdc++ 至少要 3.4.25 版本,内核要求 4.18 及以上,我查了一下,我系统 CentOS7,内核 3.10.0-957.21.3.el7.x86_64,我以为不行了,后面我一试,没问题。下面主要讲一下 ibstdc++ 3.4.25 版本的安装。

Docker-deploy-MinDoc

记录使用 docker-compose 部署 MinDoc 的过程

CentOS7 glibc 2.17 升级到 2.29

nodejs 依赖高版本 glibc,遇到并解决该问题

CentOS 以 Docker 方式部署 Gitea

CentOS 以 Docker 方式部署 Gitea 一、下载 Jenkins 镜像 Gitea 提供了标准的容器镜像(gitea/gitea),统一支持 SQLite、MySQL、PostgreSQL 和 SQL Server 作为数据库后端。每个版本的镜像同时支持两种主流的处理器体系结构 amd64 和 arm64/v8。

CentOS 以 Docker 方式部署 Jenkins

CentOS 以 Docker 方式部署 Jenkins 一、Docker 安装 Jenkins 1.1 下载 Jenkins 镜像 Jenkins 有两个产品线,一个是稳定版(Stable[LTS]),一个是新功能版(Regular[Weekly]),这里使用稳定版,当然,也可以使用新功能版。

限制内存 mongo docker-compsoe 部署

1. 通过 Docker 限制内存 2. 通过 MongoDB 配置文件限制内存