博客技术栈
本站使用以下技术构建,追求高性能与最佳开发体验
Astro 5
现代化的静态站点生成器
Tailwind CSS 3
实用优先的 CSS 框架
TypeScript
类型安全的 JavaScript
Swup
页面过渡动画
最新文章
View all posts »记录技术学习、前端开发经验和日常思考。每一篇文章都经过精心打磨,希望对你有所帮助。

2026 年 10 月漏洞节复盘:17 个组件、几十个 CVE,和一个不存在的内核提交
从 nginx、PHP、Node.js 到 eMudhra 根证书与 LiteLLM 投毒,复盘 2026 年 10 月那场集中爆发的漏洞潮,并给出一份可执行的升级清单。

CAP 不是三选二:分区发生时,多副本系统到底在承诺什么
把 CAP 从面试口号还原成一次真实的分区事故:C 是线性一致性而不是「数据一致」,A 是每个非故障节点都返回非错误响应,P 不是可选项。本文用一段可运行的 Raft 模拟,观察多数派继续提交、少数派涨任期也选不出 leader、分区恢复后日志如何收敛,再谈 quorum、会话保证、fencing token 与什么时候根本不该上共识算法。

浏览器存储选型:localStorage、IndexedDB 与 OPFS 的失效模型
选存储时最没用的指标是容量。真正决定你半夜会不会被叫醒的,是同步 API 会不会卡住主线程、事务和版本迁移由谁负责、以及浏览器在磁盘紧张时先删谁。本文用可运行的探测、迁移与 OPFS Worker 代码,把四种存储放进同一张失效模型里对比。

WebSocket、SSE 与 WebRTC:实时通信怎么选,先看数据往哪边走
把「实时」拆成方向、拓扑与可靠性三个问题:SSE 用一条 HTTP 流做单向推送,WebSocket 用全双工消息做双向通道,WebRTC 用 P2P 传媒体与数据。附三种方案的最小可运行代码、选型表与踩坑清单。
我的技术栈
多年积累的技术能力,持续学习与进步
React
Vue.js
TypeScript
JavaScript
HTML5
CSS3
Tailwind CSS
Astro
Svelte
Node.js
Git
VS Code
pnpm
Vite
Markdown
我的项目
以下是我参与和开发的一些项目,持续更新中