zoukankan      html  css  js  c++  java
  • .NET : 监控ASP.NET应用程序的缓存使用内存数变化和命中情况

    在ASP.NET开发中,我经常强调,数据的合理缓存是对性能很重要的一个因素。关于ASP.NET的缓存,一般会有三种做法

    1. 页面缓存

    2. 控件缓存

    3. 数据缓存

    其中又以数据缓存这种方式最为灵活,用的最广。

    我们不光要会做缓存,还需要评估缓存的使用情况,利用性能监视工具,可以很容易做到这一点。如下图所示

    image

    下面是我写的测试代码

    /// <summary>
    /// 创建100个缓存项目
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void Button1_Click(object sender, EventArgs e)
    {
        for (int i = 0; i < 100; i++)
        {
            Cache["cache_" + i.ToString()] = i * 100000;
        }
    }
    /// <summary>
    /// 读取100个缓存项目
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void Button2_Click(object sender, EventArgs e)
    {
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < 100; i++)
        {
            sb.Append(Cache["cache_" + i.ToString()].ToString());
        }

        Response.Write(sb.ToString());
    }

    /// <summary>
    /// 随机读取10个缓存项目
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void Button3_Click(object sender, EventArgs e)
    {
        StringBuilder sb = new StringBuilder();
        Random rnd = new Random();
        for (int i = 0; i < 10; i++)
        {
            sb.Append(Cache["cache_" + rnd.Next(99).ToString()].ToString());
        }

        Response.Write(sb.ToString());
    }

    本文由作者:陈希章 于 2009/7/28 10:40:54 发布在:http://www.cnblogs.com/chenxizhang/
    本文版权归作者所有,可以转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    更多博客文章,以及作者对于博客引用方面的完整声明以及合作方面的政策,请参考以下站点:陈希章的博客中心
  • 相关阅读:
    HTML学习笔记之二(回到顶部 与 回究竟部)
    初次使用cocoapods注意事项
    struts2在web.xml中配置详情
    hdu 3631 Shortest Path(Floyd)
    bullet HashMap 内存紧密的哈希表
    论文摘抄
    oracle中从指定日期中获取月份或者部分数据
    漫谈机器学习经典算法—特征提取与特征选择
    为什么NULL能多次free
    栈的效率为什么比堆高?
  • 原文地址:https://www.cnblogs.com/chenxizhang/p/1532770.html
Copyright © 2011-2022 走看看