如何积累有效避免.NET应用内存溢出的实战经验?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2660个文字,预计阅读时间需要11分钟。
有效预防.NET应用程式OOM的经验备忘+根据个人开发和系统调优经验,大部分内存溢出(及内存泄漏)都与不良的开发习惯直接相关。有几个开发经验可以有效预防OOM,总结如下:
1. 代码审查:定期进行代码审查,关注潜在的资源管理问题。
2.内存监控:使用工具监控内存使用情况,及时发现异常。
3.合理使用集合:避免使用易引发内存泄漏的集合,如ArrayList。
4.及时释放资源:确保所有资源在使用完毕后及时释放。
5.优化算法:优化算法,减少内存占用。
6.使用弱引用:在需要时使用弱引用,避免内存泄漏。
7.避免全局变量:减少全局变量的使用,以降低内存泄漏的风险。
通过以上措施,可以有效预防OOM的发生。
有效预防.NET应用程序OOM的经验备忘根据个人的开发和系统调优经验,大部分的内存溢出(及内存泄漏)都和不好的开发习惯有直接关系,有几个开发经验可以有效预防OOM,总结下贴出来和大家分享。
一、批量和分页老生常谈的话题,简单,但是非常实用。
每个合格的coder对数据的处理,必须要有分页或批量多次的意识。大数据量的读取或查询结果集是内存占用大户,是系统性能下降的直接原因之一。
在典型的互联网web应用中,数据量较大且高并发的情况下,不分页,或者不进行批量处理,每次总是取出很多用户数据,很容易造成内存开销过大,系统内存吃紧。再比如我们有时候进行文件操作,读取文件内容的时候就要斟酌考虑文件有多大。
如果你的项目中还在出现不分青红皂白一次查询返回N(N有多大?)条记录的DataSet、DataTable或者列表记录等等情况,或者查询大量数据写入临时表,或者一次读取很大文件内容......呵呵。
本文共计2660个文字,预计阅读时间需要11分钟。
有效预防.NET应用程式OOM的经验备忘+根据个人开发和系统调优经验,大部分内存溢出(及内存泄漏)都与不良的开发习惯直接相关。有几个开发经验可以有效预防OOM,总结如下:
1. 代码审查:定期进行代码审查,关注潜在的资源管理问题。
2.内存监控:使用工具监控内存使用情况,及时发现异常。
3.合理使用集合:避免使用易引发内存泄漏的集合,如ArrayList。
4.及时释放资源:确保所有资源在使用完毕后及时释放。
5.优化算法:优化算法,减少内存占用。
6.使用弱引用:在需要时使用弱引用,避免内存泄漏。
7.避免全局变量:减少全局变量的使用,以降低内存泄漏的风险。
通过以上措施,可以有效预防OOM的发生。
有效预防.NET应用程序OOM的经验备忘根据个人的开发和系统调优经验,大部分的内存溢出(及内存泄漏)都和不好的开发习惯有直接关系,有几个开发经验可以有效预防OOM,总结下贴出来和大家分享。
一、批量和分页老生常谈的话题,简单,但是非常实用。
每个合格的coder对数据的处理,必须要有分页或批量多次的意识。大数据量的读取或查询结果集是内存占用大户,是系统性能下降的直接原因之一。
在典型的互联网web应用中,数据量较大且高并发的情况下,不分页,或者不进行批量处理,每次总是取出很多用户数据,很容易造成内存开销过大,系统内存吃紧。再比如我们有时候进行文件操作,读取文件内容的时候就要斟酌考虑文件有多大。
如果你的项目中还在出现不分青红皂白一次查询返回N(N有多大?)条记录的DataSet、DataTable或者列表记录等等情况,或者查询大量数据写入临时表,或者一次读取很大文件内容......呵呵。

