zoukankan      html  css  js  c++  java
  • [c#] HttpContext.Cache和AppFabric的性能对比

    HttpContext

    // 写
                Stopwatch sw = new Stopwatch();
                sw.Start();

                for (int i = 1; i <= 100000; i++)
                {
                    var m = new Man()
                    {
                        age = 1,
                        Height = 2
                    };
                    HttpContext.Current.Cache[i.ToString()] = m;
                }

                sw.Stop();
                Debug.WriteLine(sw.ElapsedMilliseconds);


                // 读
                sw.Start();

                for (int j = 1; j <= 100000; j++)
                {
                    var m = HttpContext.Current.Cache[j.ToString()];
                }


                sw.Stop();

                Debug.WriteLine(sw.ElapsedMilliseconds); 

    结果是:

     181

    249

    Appfabric

    var dcf = new DataCacheFactory();
                var cache = dcf.GetCache("default");

                // 写
                Stopwatch sw = new Stopwatch();
                sw.Start();

                for (int i = 1; i <= 100000; i++)
                {
                    var m = new Man()
                    {
                        age = 1,
                        Height = 2
                    };
                    cache.Put(i.ToString(), m);
                }

                sw.Stop();
                Debug.WriteLine(sw.ElapsedMilliseconds);


                // 读
                sw.Start();

                for (int j = 1; j <= 100000;j++ )
                {
                    var m = cache.Get(j.ToString());
                }


                sw.Stop();

                Debug.WriteLine(sw.ElapsedMilliseconds); 

     结果是

    133979 (写的时间)

    263803  (读+写的总时间)

    补充Application的测试结果:

    103
    184

     // 写

                Stopwatch sw = new Stopwatch();
                sw.Start();

                for (int i = 1; i <= 100000; i++)
                {
                    var m = new Man()
                    {
                        age = 1,
                        Height = 2
                    };
                    Application[i.ToString()] = m;
                }

                sw.Stop();
                Debug.WriteLine(sw.ElapsedMilliseconds);


                // 读
                sw.Start();

                for (int j = 1; j <= 100000; j++)
                {
                    var m = Application[j.ToString()];
                }


                sw.Stop();
                Debug.WriteLine(sw.ElapsedMilliseconds); 
  • 相关阅读:

    HttpClient发送get/post请求
    maven创建ssm项目依赖(pom.xml文件)
    java的Scanner类总结
    java多线程总结
    java跨域问题
    Idea打包项目war并且发布到服务器
    Mybatis入门案例之增删改查
    springMVC中的@RequestBody和@ResponseBody以及@RequestParam
    Gson解析json
  • 原文地址:https://www.cnblogs.com/linn/p/2568490.html
Copyright © 2011-2022 走看看