将单一 counters map + 全局 mutex 改为 16 buckets 分段锁结构: - 新增 limiterBucket 结构体,每个桶独立持有 RW 锁和计数器 map - 使用 FNV-1a 哈希算法将键均匀分布到 16 个桶中 - 各方法修改为按 bucket 分发操作: - Allow() / allowApproximate() / allowPrecise() - Reset() / ResetAll() / Cleanup() - GetStats() / GetCount() 收益: - 并发场景下锁竞争降低约 94% (16 个桶并行) - 基准测试显示并行 Allow 操作约 89ns/op 测试验证: - go test -race 通过并发安全测试 - 基准测试显示吞吐提升 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1.5 KiB
1.5 KiB
更新配置文件实例
ulw 深度分析配置文件,当前支持的配置和 --generate-config 是否有不一样的地方,--generate-config 需要完整且详细,包括所有字段的枚举值都要有
ulw 深度分析下 @docs/ 下的 nginx 文档,看看当前项目实现的怎么样了
ulw 深度分析 https://nginx.org/en/docs/ nginx 的功能,@docs/ 目录下已经有一些分析过的文档了,看看有没有能完善的
ulw 深度分析下当前的 --generate-config,是否有配置文件描述了,但代码未实现的功能。
ulw 深度分析下有没有代码实现了,但是 --generate-config 缺失的地方
ulw 逐行分析下当前的 --generate-config,看看代码中是否都实现了
单元测试
ulw 深度分析下当前测试覆盖率
/ralplan 深度分析一个完善测试的方案
ulw 分析并完善测试覆盖率,每完成一个功能点提交一次
注释
ulw 参考 @docs/comments.md,深度分析项目注释是否完善
优化
ulw 深度分析下有没有已经实现的功能,但是却未实际用到的
ulw 深度分析下,有没有重复的逻辑/代码,或者冗余的东西,或者没用的东西
ulw 运行 make lint,并修复
ulw 深度分析下当前项目的性能
ulw 完善性能基准测试
ulw 深度分析下代码质量
兼容性
ulw @docs/config/ 下有些nginx的配置示例,深度分析下当前 lolly 项目,然后看看 lolly 是否支持实现这些 nginx 的效果