三沣开发知识 购物 网址 游戏 小说 歌词 地图 快照 开发 股票 美女 新闻 笑话 | 汉字 软件 日历 阅读 下载 图书馆 编程 租车 短信 China
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
vbs/VBScript DOS/BAT hta htc python perl 游戏相关 VBA 远程脚本 ColdFusion ruby专题
autoit seraphzone PowerShell linux shell Lua Golang Erlang 其它教程 CSS/HTML/Xhtml
html5 CSS XML/XSLT Dreamweaver教程 经验交流 开发者乐园 Android开发资料
站长资讯 .NET新手 ASP.NET C# WinForm Silverlight WCF CLR WPF XNA VisualStudio ASP.NET-MVC .NET控件开发 EntityFramework WinRT-Metro Java C++ PHP Delphi Python Ruby C语言 Erlang Go Swift Scala R语言 Verilog 其它语言 架构设计 面向对象 设计模式 领域驱动 Html-Css JavaScript jQuery HTML5 SharePoint GIS技术 SAP OracleERP DynamicsCRM K2 BPM 信息安全 企业信息 Android开发 iOS开发 WindowsPhone WindowsMobile 其他手机 敏捷开发 项目管理 软件工程 SQLServer Oracle MySQL NoSQL 其它数据库 Windows7 WindowsServer Linux
  IT知识库 -> C# -> 性能优化的心得 -> 正文阅读
 

[C#]性能优化的心得

性能优化的心得 跟同事交流,之前上线的系统一两年之后,数据有两三千万
系统,没有办法很好的应对这么多的数据
这有两方面原因,一个是设计的时候没有怎么考虑数据量的问题
还有一个就是写代码的时候,并没有注意数据量的问题
不去关注数据量的问题,这可能是程序员自己的意识,还有可能是客户自以为的不用关注
客户说,我们的数据没有多少,你不用考虑那么多,以后这个系统用不用都还不好说
现在只要100万铺底数据,5000条交易数据能跑出来就行
听起来,100万铺底数据,5000条也不多,应该没有那么难吧
仔细分析客户说的就跟没有说一样
因为一开始铺底数据也不会有100万,也不会恰好100万里面正好有五千条让我们处理
100万 5000条数据只是一个点,过完这个点怎么办,系统真的就死掉了?
除了设计上性能瓶颈不好解决,写代码的时候多思考一些问题,还是能解决一些性能问题的
以下就是自己最近优化客户的销项报表的一个心得分享
首先优化什么时候最合适
这个问题首先我们应该培养自己的优化意思,写代码的时候,就去注意这方面的问题。
另一个就是,优先保证客户的需求是没有问题的,这个时候有性能问题的再去优化。
如果没有考虑功能是否开发完成就急着去优化,可能刚优化完,测出来了一些bug,又需要修改,当修改完之后,发现之前优化好的,需要再去优化,如此反复有可能会浪费很多必要的时间
优化到什么程度才算结束
1.优化到客户满意,但性能这个问题,客户的要求,我们也不一定能做的到
2.充分发挥计算机的计算能力,让CPU和内存的利用率达到极致,降低与IO,数据库,其他系统的交互次数
优化过程中要从哪些方面去考虑 利用计算机的多线程 不需要写文件的就不要写 只要内存不死,能在内存里面缓存的数据,就一次性放到内存里面,不要频繁访问数据库 不要在循环里面,操作数据库,除非数量大分批处理,需要释放内存的时候 减少不必要的代码,用更高效的算法 要借助性能测试工具,定量去分析
1.用的比较多的是DotTreace,能够比较好分析出来程序的性能瓶颈在哪里,可以看到每个方法具体执行时间,能够有方向的去优化
要多问问有经验的人,给些意见
1.向有经验的人请教,能够更快速的解决问题,有经验的人,也许可以给出更多合理的意见
  C# 最新文章
字符串阵列分别输出元素的索引,原值和长度
格式化你的字符串
C#宣告一个变量
C#中级
拆分一个字符串并把每个字符单独输出
通过手机号定位归属地
Linq To DataSet
C# API: 生成和读取Excel文件
分享一个异步任务在遇到IO异常时支持递归回
C#中的扩展方法
上一篇文章      下一篇文章      查看所有文章
加:2017-12-08 23:22:03  更:2017-12-08 23:22:26 
 
技术频道: 站长资讯 .NET新手区 ASP.NET C# WinForm Silverlight WCF CLR WPF XNA Visual Studio ASP.NET MVC .NET控件开发 Entity Framework WinRT/Metro Java C++ PHP Delphi Python Ruby C语言 Erlang Go Swift Scala R语言 Verilog 其它语言 架构设计 面向对象 设计模式 领域驱动设计 Html/Css JavaScript jQuery HTML5 SharePoint GIS技术 SAP Oracle ERP Dynamics CRM K2 BPM 信息安全 企业信息化其他 Android开发 iOS开发 Windows Phone Windows Mobile 其他手机开发 敏捷开发 项目与团队管理 软件工程其他 SQL Server Oracle MySQL NoSQL 其它数据库 Windows 7 Windows Server Linux
脚本语言: vbs/VBScript DOS/BAT hta htc python perl 游戏相关 VBA 远程脚本 ColdFusion ruby专题 autoit seraphzone PowerShell linux shell Lua Golang Erlang 其它教程
网站开发: CSS/HTML/Xhtml html5 CSS XML/XSLT Dreamweaver教程 经验交流 开发者乐园 Android开发资料
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 美食菜谱 新闻资讯 电影视频 小游戏 Chinese Culture 股票 租车
生肖星座 三丰软件 视频 开发 短信 中国文化 网文精选 搜图网 美图 阅读网 多播 租车 短信 看图 日历 万年历 2018年7日历
2018-7-18 3:28:02
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT知识库