首页
网页制作
网络编程
脚本专栏
数据库
网站运营
网络安全
平面设计
CMS教程
搜索
建站极客
网络编程
ASP.NET
正文
asp.net程序优化 尽量减少数据库连接操作
所属分类:
网络编程
/
ASP.NET
阅读数: 1117
收藏 0
赞 0
分享
项目以我自己的设计编码完成,并整合测试。初始化数据时,问题出现了。刚开始体现在客户端接受数据很慢。测试环境环境下,数据库服务器部署在国外,网站部署在公司内部,而且我一直认为我的程序在数据库数据处理这里已经做了足够的优化,包括索引和主键已经做到了合理使用。综上所述,起初的速度问题一直没有引起我的关注。
然而最后问题的关键恰恰出在数据库连接查询方面,频繁查询导致数据初始化速度很慢。刚开始我采取的方法是即用即查:需要数据的时候就从数据库查,有比较多的单表查询返回单个字段的情况。假如我有大概3000条左右的数据集合,我循环取出其中的每一条,再从其它数据表里查询得到需要的字段,这样无故增加了3000多次数据库连接和关闭操作,当网络速度不理想时,程序速度就无法忍耐了。
坚持一条原则:尽量减少数据库连接操作。跟前端开发优化中的尽量少Http请求类似。
最终我采取的方案是将所需要的数据经过多个数据表统一放到一个List对象中,也就是放到内存中,在根据LINQ查询其中的每条数据,这样速度会快很多。这样似乎破坏力一个原则,之前我遵循的多表查询最好不要inner join3个以上的表,而这次出现了多次一个sql语句就inner join3个表以上的情况.虽然破坏了这个原则,但是相比速度极慢,连功能都实现不了的情况,显然inner join 也可以让人接受。
更多精彩内容
其他人还在看
ASP.NET 水晶报表打印功能实现代码
ASP.NET下的水晶报表打印,据我所知有以下几种办法可以打印
评论 0
收藏 0
赞 0
分享
ASP.Net 图片存入数据库的实现代码
在很多时候,我们有这样的需求:把图片存入到数据库当中。在一些应用程序中,我们可能有一些敏感的资料,由于存储在文件系统(file system)中的东西,将很容易被某些用户盗取,所以这些数据不能存放在文件系统中。
评论 0
收藏 0
赞 0
分享
让Silverlight 2.0动画动起来Making Silverlight 2.0 animation Start(不能运动原因)
Microsoft Expression Blend 2 制作动画个人感觉倒像3DMAX 可以自动捕捉关键帧
评论 0
收藏 0
赞 0
分享
asp.net Reporting Service在Web Application中的应用
由于我们这个项目中使用微软的报表服务(Reporting Services)作为报表输出工具,本人也对它进行一点点研究,虽没有入木三分,但这点知识至少可以在大部分Reporting Service的场景中应用。
评论 0
收藏 0
赞 0
分享
C# 文件上传 默认最大为4M的解决方法
.net中默只能上传小于4m的文件,大于4M将无法显示页面.那么如何设置来使imputfile能上传更大的文件呢
评论 0
收藏 0
赞 0
分享
asp.net 购物车实现详细代码
asp.net 购物车实现详细代码
评论 0
收藏 0
赞 0
分享
asp.net repeater实现批量删除时注册多选框id到客户端
repeater批量删除时注册多选框id到客户端的实现代码
评论 0
收藏 0
赞 0
分享
asp.net aspnetpager分页统计时与实际不符的解决办法
最近分页方面根据实际需要修改了一些函数
评论 0
收藏 0
赞 0
分享
iis 服务器应用程序不可用的解决方法
访问页面时提示 服务器应用程序不可用,大家可以按照下面的方法重新注册下,应该能好点
评论 0
收藏 0
赞 0
分享
asp.net button 绑定多个参数
asp.net button 绑定多个参数的代码
评论 0
收藏 0
赞 0
分享
查看更多
网络赚钱
更多
没钱不懂技术的屌丝草根站长该怎么通过网络赚钱
让所谓“网络营销”的人哭笑不得:一个圈外人士的真实网赚经历
站长故事实战:淘宝买关键词排名SEO服务攻略介绍
网络赚钱的几种模式总结
百度联盟点击率低的原因
创业者找投资需要想好的九个问题
站长故事
更多
为什么被黑的总是小米?
一个个人站长的网站推广运营核心销策略
一问易答:为何小米4/魅族MX4不支持NFC?
PHPWind
个人经历:盲目的坚持更新网站真的有用吗?
为什么知乎做起来了?市场竞争的魅力和价值