37 归档分页
370 留言互动
4 核心专题

JWT 安全体系设计:全局失效、单点注销与登录防护实践

本文围绕 JWT 在实际项目中的安全短板展开,分析了“无法主动撤销 Token、改密后旧 Token 仍有效、管理员降权失效、登录接口易被爆破”等常见问题,并给出一套工程化解决方案。通过 `authVersion` 实现账号级 Token 全局失效,通过 Redis + SHA-256 黑名单实现单设备注销,通过 Lua 脚本完成账号与 IP 双维度限流,再结合过滤器分层校验,实现从签发、验证到撤销的完整安全闭环。文章同时讨论了 Redis TTL、分布式锁、Redis Cluster hash tag、密钥强校验等细节,展示如何在保留 JWT 无状态优势的同时,补齐其安全缺陷,构建一套可靠的认证体系。

给Codex加上一层边界:我的 AI 能力私有化实践

文章详细介绍了整体架构、Responses API 与 Chat Completions 兼容、SSE 流式响应、图片识别支持,以及公网暴露过程中的安全设计。同时记录了路径白名单、Bearer 鉴权、限流、并发控制、权限收缩和协议兼容等关键细节。通过这套方案,可以在不直接暴露宿主机和 Codex 登录状态的前提下,为个人工具和智能体系统提供受控的 AI 能力接口。

从文章结构到阅读体验:博客自动目录功能的实现

长篇文章缺少目录会增加用户查找信息的成本,影响阅读体验。本文介绍了一种轻量级的文章目录实现方案,通过浏览器原生 API 自动提取正文中的 `h2`、`h3` 标题,为章节生成唯一锚点,并动态构建目录导航。同时结合 `IntersectionObserver` 监听标题进入视口的状态,实现滚动阅读时目录自动高亮。针对固定导航栏遮挡问题,文章还介绍了 `scroll-margin-top` 的优化方式。整个方案无需依赖第三方插件,具有实现简单、性能稳定、扩展性强等特点,适用于博客、技术文档、知识库等内容型网站,能够有效提升长文章的浏览效率和用户阅读体验。

一个IP查询接口,暴露出的系统设计边界

文章围绕核心数据与增强数据的边界划分,讨论失败降级、超时控制、异步补偿、可信代理解析、私有地址处理以及本地 IP 库迁移检查等关键问题。通过统一“IP未知”状态,让系统在定位服务不可用时仍保持评论提交能力,同时保留内部监控和问题排查能力。最终实现一个可失败、可恢复、可观测的外部数据增强方案。

一个“搜不到”的问题,重构了整个搜索链路

博客搜索看似只是一次关键词查询,但真正可靠的搜索需要处理输入规范化、召回策略、排序逻辑、分页一致性、缓存隔离以及用户反馈等多个环节。本文记录一次真实的博客搜索重构过程:针对短关键词“AI”无法命中的问题,分析 MySQL 全文检索与模糊匹配叠加导致的召回缺陷,重新设计搜索契约,将字面匹配作为结果召回依据,全文检索作为排序辅助,同时完善 URL 编码、分页边界、空结果状态和自动化测试。通过这次改造,搜索功能从“偶尔能用”变成了一条行为明确、结果稳定、可持续演进的搜索链路。

从“能评论”到“会治理”:我如何实现 AI 审核、AI 回复与表情包系统

本文介绍个人博客中 AI 评论审核、AI 自动回复与表情包系统的完整设计。系统在评论安全入库后,通过异步任务执行本地敏感词预筛,并根据内容类型将普通文本、内置表情和斗图图片分流至文本或多模态模型。借助七种审核状态、条件更新和定时重试机制,避免并发覆盖、重复审核与回复丢失。AI 回复结合文章内容、评论语义和表情情绪生成个性化内容。表情包服务则通过域名白名单、URL 校验、HTML 清洗、缓存及故障降级保障安全与可用性,最终形成可恢复、可追踪、支持人工接管的评论治理流水线。

AI评论审核背后的状态机与一致性设计

AI 评论审核真正的难点并不是调用大模型,而是如何让一个异步、不稳定、可重试的外部能力融入业务流程。本文以 Spring Boot 博客评论系统为例,介绍如何通过状态机、事务提交后回调、乐观锁式条件更新、失败分层重试、事务一致性和前端结果定位,构建可靠的 AI 评论审核链路。通过明确状态流转、防止过期任务覆盖人工操作、保证回复数据一致性,并完善用户侧反馈闭环,让 AI 功能从“能运行”提升到“可维护、可恢复、可上线”的工程化实现。

【更新日志】

本文基于项目 2023 年至 2026 年完整 Git 提交历史整理,记录了个人博客从诞生到产品化演进的全过程。项目最初以 Spring Boot 博客系统为基础,逐步完善文章管理、评论互动、天气、访问统计、移动端适配等能力;随后围绕评论系统、性能优化、安全治理持续重构。2026 年起,博客进一步引入 AI 摘要、AI 问答、AI 评论审核等智能化能力,并迁入 total 多模块工程,实现统一部署。三年半时间内,项目经历了从“能用”到“好用”,再到“智能化”的转变。Git 记录的不只是代码变化,更是一套个人产品持续迭代、技术成长和工程实践的完整轨迹。

金叶炸金花

这不是一个在浏览器里随机发三张牌的演示页面,而是一套完整的多人在线游戏系统。它支持实时对战、房间管理、断线恢复、AI 机器人、积分流水、历史记录和管理后台,并围绕服务端权威、状态一致性、并发控制与隐私隔离进行了系统设计。