一个人也能搞定全栈,Go + HTMX 值得一试

对很多独立开发者和 Go 后端工程师来说,真正拖慢后台项目的,往往不是业务本身,而是前端工程体系的额外复杂度。Go + HTMX + Templ 这套组合的价值,在于用服务端返回 HTML 片段取代大量 JSON 与手写 JS,把交互、模板和后端逻辑重新收拢到一条更短的链路里。

一个人也能搞定全栈,Go + HTMX 值得一试

Go 语言 context.Value 的强类型安全实践

`context.Value` 常被拿来偷渡数据库连接、配置和业务参数,表面省事,实际把依赖隐藏进运行时。本文围绕 Go 中最常见的两类问题展开:类型断言导致的 panic,以及字符串 Key 冲突;再给出私有 Key 与强类型封装的可落地写法,并说明哪些数据该放进 Context。

Go 语言 context.Value 的强类型安全实践

net/http 超时如何配置?避免慢连接拖垮服务

Go 的 net/http 启动简单,但默认写法并不会替生产环境兜住慢连接风险。本文按连接生命周期拆解服务端与客户端的超时配置,说明 ReadHeaderTimeout、ReadTimeout、WriteTimeout、IdleTimeout 和 context 分别该管什么、哪些场景容易误配,以及一组适合公网服务起步的配置思路。

net/http 超时如何配置?避免慢连接拖垮服务

写了多年 Go Benchmark,为什么你应该用 `b.Loop()`?

Go 1.24 新增的 `testing.B.Loop()`,把基准测试里最常见的两类问题一起收拾了:一类是结果未使用时被编译器优化掉,另一类是初始化和清理阶段需要手动控制计时。对长期维护 Benchmark 的 Go 开发者来说,它不只是写法变短,更直接影响测试结果是否可信。

写了多年 Go Benchmark,为什么你应该用 `b.Loop()`?

适配 Yii 3.0,php-casbin/yii-permission 3.0 正式发布

php-casbin/yii-permission 3.0 已正式发布,重点是完成对 Yii 3.0 组件化生态的适配,并把权限拦截迁移到 PSR-15 中间件体系。对正在评估 Yii 3 权限方案的 PHP 开发者来说,这一版本的价值主要体现在环境要求、接入方式和升级成本三个方面。

适配 Yii 3.0,php-casbin/yii-permission 3.0 正式发布