惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
P
Proofpoint News Feed
G
Google Developers Blog
B
Blog
Engineering at Meta
Engineering at Meta
阮一峰的网络日志
阮一峰的网络日志
The Register - Security
The Register - Security
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 叶小钗
The Cloudflare Blog
The Hacker News
The Hacker News
D
Darknet – Hacking Tools, Hacker News & Cyber Security
C
CXSECURITY Database RSS Feed - CXSecurity.com
雷峰网
雷峰网
F
Fortinet All Blogs
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
H
Hackread – Cybersecurity News, Data Breaches, AI and More
酷 壳 – CoolShell
酷 壳 – CoolShell
Last Week in AI
Last Week in AI
T
Threat Research - Cisco Blogs
A
About on SuperTechFans
量子位
Recorded Future
Recorded Future
博客园 - 三生石上(FineUI控件)
H
Help Net Security
Help Net Security
Help Net Security
P
Palo Alto Networks Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
T
Troy Hunt's Blog
W
WeLiveSecurity
V
Vulnerabilities – Threatpost
T
The Exploit Database - CXSecurity.com
Know Your Adversary
Know Your Adversary
Apple Machine Learning Research
Apple Machine Learning Research
Scott Helme
Scott Helme
N
News | PayPal Newsroom
AWS News Blog
AWS News Blog
D
DataBreaches.Net
Blog — PlanetScale
Blog — PlanetScale
MongoDB | Blog
MongoDB | Blog
B
Blog RSS Feed
腾讯CDC
J
Java Code Geeks
Microsoft Azure Blog
Microsoft Azure Blog
TaoSecurity Blog
TaoSecurity Blog
GbyAI
GbyAI
Y
Y Combinator Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
D
Docker

博客园 - Emmet.C

[求助]关于Vsiual Studio.NET 2005中Error List种错误的定位问题 【求助】关于asp.net中的'Thread was being aborted'异常 安装Tomcat 5.0.28备注 如何在运行时定制DataGrid的显示风格? asp.net中如何回车触发指定按钮的事件 Jbuilder2005安装备注 Infragistics.WebUI.UltraWebTab.v4.3使用备注 WinForm界面模式 如何定制WebCarlendar类型控件的星期格式 .NET在Debug模式下的编译错误 DataGrid动态绑定 Infragistics UltraWebTab的奇怪问题 架构设计备注(用户以及操作权限管理) 关于通过手机收发短信的相关资源 Read CPU ID(from CSDN) 可用性相关的资料站点 万网企业邮箱开始提供垃圾邮件过滤功能了 为何使用表格排版是不明智的? 申请了GMail
使用Singleton改善ASP.NET性能备注
Emmet.C · 2005-01-28 · via 博客园 - Emmet.C

在最近的ASP.NET项目中,我们在测试期间发现系统性能低下。最开始我们怀疑是由于使用了过多的UserControl所致。但是由于这已经是项目晚期,已经不可能再推翻以往的设计架构重来。所以我们不得不寻找其它可以改善性能的方法。

刚开始我们使用缓存来进行改善。但是我们的页面中大量的数据都是随时变化的,.net framework不够精确的缓存命中率给我们的数据一致性表现带来尴尬的处境。

其次Viewstate的优化似乎也没有什么效果,可以优化的地方少之又少。

唯一可以做的便是将大量页面的SessionState改为ReadOnly,因为我们需要在处理过程中使用Session进行用户效验。

最后我们不得不从后台处理来考虑。我们发现后台的服务类以及业务逻辑被频繁调用,所以我们使用Singleton模式将底层业务逻辑类和工具类进行了重构,发现性能大幅提升。虽然有人说Singleton的一个缺点便是每次都需要检查类是否创建,这会消耗资源。但是检查所消耗的资源总比创建要小得多吧,何况不会无止境的吞噬宝贵的内存。

这次的经历告诉我们一个教训:良好的结构将会保证系统的稳定性和性能。