Copyright © 2022-2025 aizws.net · 网站版本: v1.2.6·内部版本: v1.24.0·
页面加载耗时 0.00 毫秒·物理内存 73.8MB ·虚拟内存 1369.4MB
欢迎来到 AI 中文社区(简称 AI 中文社),这里是学习交流 AI 人工智能技术的中文社区。 为了更好的体验,本站推荐使用 Chrome 浏览器。
AI 中文社 网站数据层切换到 Gorm 之后,内存使用上有了一些变化,物理内存飙升了2倍多,虚拟内存更是高出了将近1倍,物理内存在 60-70M 左右,虚拟内存在 1.2G 之间。采用 Gorm 之前,早就有一些思想准备,为了开发效率、方便,架构难免重度使用了反射功能,最终结果,资源肯定会随之增长的。不过,目前没有具体的数据证明是单单使用了 Gorm 引起的变化,我觉得使用 Go 1.21.4 版本,也可能是一个原因吧,Go 1.21.4 基础库全面加上了泛型!以下是对比使用情况:
# 现在内存使用情况:
VmPeak: 1268872 kB
VmSize: 1268872 kB
VmLck: 0 kB
VmPin: 0 kB
VmHWM: 74300 kB
VmRSS: 61864 kB
VS
# 过去某个时间段内存使用情况:
VmPeak: 724552 kB
VmSize: 724552 kB
VmLck: 0 kB
VmPin: 0 kB
VmHWM: 23752 kB
VmRSS: 19000 kB
至于 CPU 使用情况也略有飙升,近期再观察情况。
最后给 Gorm 点赞,使用了 Gorm 之后,开发效率提升了很多,代码也少了相关 SQL 的代码,都是属性,使用起来很舒服,虽然遇到一些嵌套统计语句,Gorm 难以表现或实现起来臃肿,最后还是使用到 SQL 来写,幸好 Gorm 带了 Raw 写原生 SQL 语句功能(没办法,开发社交逻辑,有不少的用到多表嵌套关联统计),这方面的代码最后还是没有脱离 Gorm,不得不说 GORM 这个框架功能很强大,想得很周到。