🚀 FxJSON v1.1.0 - 解码性能大幅优化
✨ 新增功能
🔥 高性能解码方法
DecodeStruct(data []byte, v any) error - 直接从字节解码,跳过Node创建开销
DecodeStructFast(data []byte, v any) error - 极速解码,性能关键场景首选
⚡ 内部优化
- 全新的
decodeValueFast() 快速解码引擎
- 零拷贝字符串提取优化
- 预分配容量减少内存扩容
- 优化的结构体字段映射缓存
- 智能类型推断和快速路径处理
📊 性能提升
| 解码方法 |
性能提升 |
使用场景 |
node.Decode() |
基准 |
需要Node功能时 |
DecodeStruct() |
~1.0x |
直接结构体解码 |
DecodeStructFast() |
~1.1x |
性能关键场景 |
🎯 与标准库对比
- 简单解码:2.1x 速度提升
- 复杂解码:1.25x 速度提升
- 大数据解码:1.27x 速度提升
🔧 使用示例
// 方法1: 标准Node解码
node := fxjson.FromBytes(jsonData)
var user User
err := node.Decode(&user)
// 方法2: 直接解码 (推荐)
var user User
err := fxjson.DecodeStruct(jsonData, &user)
// 方法3: 极速解码 (性能关键)
var user User
err := fxjson.DecodeStructFast(jsonData, &user)
📚 文档更新
- ✅ 完善的API文档和使用示例
- ✅ 性能对比和选择建议
- ✅ 复杂结构体解码演示
- ✅ 错误处理最佳实践
🎯 最佳实践建议
- 高频调用场景使用 DecodeStructFast()
- 需要遍历+解码时使用 node.Decode()
- 一次性解码大量数据时使用 DecodeStruct()
🔄 向后兼容
- ✅ 完全向后兼容,现有代码无需修改
- ✅ 所有原有API保持不变
- ✅ 新增方法作为性能增强选项
---
让JSON解析飞得更快! 🚀
### Git 命令示例
```bash
# 创建带注释的tag
git tag -a v1.2.0 -m "v1.2.0 - High-Performance Decode Optimization
🚀 FxJSON v1.2.0 - 解码性能大幅优化
✨ 新增功能:
- DecodeStruct() - 直接从字节解码
- DecodeStructFast() - 极速解码引擎
- 全面的内部性能优化
📊 性能提升:
- 与标准库对比提升1.2-2.1倍
- 新增方法比原方法提升5-10%
- 零拷贝和预分配优化
🔄 完全向后兼容,现有代码无需修改"