性能优化 | zorm v1.8.5 发布

发布于

Go 轻量 ORM,零依赖,零侵入分布式事务,支持达梦 (dm)、金仓 (kingbase)、神通 (shentong)、南通 (gbase)、TDengine、mysql、postgresql、oracle、mssql、sqlite、db2、clickhouse...

源码:[https://gitee.com/chunanyong/zorm](https://gitee.com/chunanyong/zorm)
官网:[https://zorm.cn](https://zorm.cn)

- 基于原生 sql 语句,学习成本更低,性能更优
- [代码生成器](https://gitee.com/zhou-a-xing/zorm-generate-struct)
- 代码精简,主体 3000 行,零依赖 5000 行,注释详细,方便定制修改
- **支持事务传播,这是 zorm 诞生的主要原因**
- 支持 mysql、postgresql、oracle、mssql、sqlite、db2、**dm (达梦)、kingbase (金仓)、shentong (神通)、gbase (南通)、TDengine、clickhouse**
- 支持多库和读写分离
- 不支持联合主键,变通认为无主键,业务控制实现 (艰难取舍)
- 集成 seata-go、hptx、dbpack,支持全局托管,不修改业务代码,零侵入分布式事务
- 支持 clickhouse,更新和删除语句使用 SQL92 标准语法

**更新:**

1. 复用 `sqlRowsValues` 中的载体数组,减少每行结果扫描时的内存分配
2. 预分配 slice 容量,避免 reflect.Append 在循环中多次扩容
3. 去掉重复调用的 `getConfigFromConnection`
4. 完善文档,注释

---

原文链接:[点击查看](https://www.oschina.net/news/471642/zorm-1-8-5-released)

评论

暂无评论。