【问题标题】:ASP.NET Web.config AppSettings PerformanceASP.NET Web.config AppSettings 性能
【发布时间】:2009-08-20 08:54:12
【问题描述】:

我在 web.config 中有许多 appSettings 经常使用(即在每次回发时)。 ConfigurationManager 是否正在处理这些值,或者通过将这些值复制到 ApplicationStart() 上的应用程序状态并随后从那里检索它们来获得任何性能提升?

【问题讨论】:

    标签: asp.net web-config appsettings


    【解决方案1】:

    AFAIK 配置在启动时被读取和解析,之后数据保存在内存中。我认为缓存应用程序变量中的状态不会带来任何性能提升——尽管您可能会获得更高的可读性,因为您不会使用ConfigurationManager.AppSettings[...] 乱扔代码。

    【讨论】:

    • 感谢您的信息。我使用我自己的常用方法来访问状态,所以“垃圾”无论如何只会在一个地方。 :-)
    • 这篇文章的声明怎么样:dotnetperls.com/appsettings-cache他们声称缓存这些设置快 30 倍。
    • @James Reategui:不知道——我很惊讶,我也不知道他们到底在测量什么。关键是——你是否可能在一个紧密的循环中读取这些值?如果是这样,您可以从设置中读取到局部变量,这将比静态类中的属性更快...
    • 我也很确定 Appsettings 被缓存了,这个微软链接:msdn.microsoft.com/en-us/library/aa478432.aspx 证实了这一点; “重要的是要意识到整个 部分在我们第一次检索设置值时被读取、解析和缓存。从那时起,所有设置值请求都来自内存中的缓存,因此访问是非常快,并且不会产生任何后续访问文件或解析 XML 的开销。”
    猜你喜欢
    • 1970-01-01
    • 2012-03-24
    • 1970-01-01
    • 1970-01-01
    • 2017-10-19
    • 1970-01-01
    • 2016-12-27
    • 2011-09-11
    • 2017-02-17
    相关资源
    最近更新 更多