技术博客文章
Laravel Octane 常驻内存:用 Swoole 把请求延迟打下来
常驻内存意味着什么 传统 PHP-FPM 每次请求都要重新加载框架、重新连接数据库、重新解析路由,开销固定且重复。Laravel Octane 用 Swoole 或 RoadRunner 把应用常驻进内存,启动一次后反复服务请求,框架引导成...
Rust 配置管理实战:用 config crate 读取多格式配置与环境切换
它能读哪些格式 config crate 把配置来源抽象成一套统一的 Builder:支持 TOML、YAML、JSON、ini,也支持环境变量和命令行参数,并且可以多层合并——比如默认配置 + 环境配置文件 + 环境变量覆盖,越靠后的来源...
Go 并发流水线:用 Fan-in/Fan-out 把流式数据处理做稳
什么是 Fan-out 和 Fan-in Fan-out 指一个数据源被多个 worker 同时消费,用来并行处理;Fan-in 指把多个 channel 的结果合并回一个 channel,方便下游统一读取。两者拼起来就是一条并发流水线:生...
Vue 3 构建优化:用 Vite 做分包、产物可视化与体积瘦身
先把产物看清楚 优化前先量,别凭感觉砍。rollup-plugin-visualizer 能生成一张交互式依赖图,让你一眼看到是哪个库把包撑大的。 # 安装 npm i -D rollup-plugin-visualizer // vit...
React 原子化状态管理:用 Jotai 把全局状态拆成可组合的原子
为什么不直接用单一 store Redux 或 Zustand 这类方案通常是一个集中的 store,组件通过 selector 去取自己关心的片段。项目变大以后,store 里塞满了互不相干的业务状态,某个字段一变,所有订阅它的组件都要重...
Vue 3 工程化:用 unplugin 自动导入 API 与组件,砍掉 import 噪声
import 噪声是怎么堆积的 每个 Vue 组件顶部都写 ref、computed、onMounted,每个 UI 组件再写一遍 import。VueUse、Element Plus 这类库更是重灾区,一个文件顶部能堆十几行 import...
Rust 用 argon2 做密码哈希与校验:安全地存储用户凭证
明文存密码是事故 用户表里绝不能存明文密码。argon2 是密码哈希竞赛的胜出算法,自带加盐、专门抵抗 GPU 暴力破解。Rust 里用 argon2 crate 配合 password-hash 做哈希与校验,代码量很小却把安全基线立住了...
React 用 Zod 统一前后端数据校验:把规则抽成可复用的 schema
为什么要在前端额外做 schema 校验 表单库负责把输入收集成值,但值的"形状"和"规则"往往散落在各处。把校验抽成一个 Zod schema,既能给 react-hook-form 用,也能在拿到接口响应时再校验一遍,前后端共用同一套规...
Laravel 多语言与本地化实战:用 Lang 与 JSON 语言包做中英文切换
把文案从代码里搬出来 把中文 hardcode 到控制器和模板里,一旦要支持英文就得满世界改。Laravel 的 Lang 门面配合语言包,把文案集中管理,运行时按用户语言切换,业务代码完全不必感知当前是哪种语言。 用 JSON 语言包 在...
Go 手写 net/http 中间件链:从零拼一条可组合的请求管道
框架不是必须的 net/http 的 http.Handler 就是一个函数签名,中间件本质上是一个"接收 handler、返回 handler"的函数。自己拼一条链,逻辑完全透明,也更容易理解 Gin、Echo 这类框架底层在做什么。小型...
