zoukankan      html  css  js  c++  java
  • 利用缓存技术解决访问统计数据库压力

     cacheVisit cv=new cacheVisit();
                        cv.sysno=sysno;
                        cv.reurl=reurl;
                        cv.ip=GetIpV4AndV6();
                        cv.moduleclass=moduleclass;

                        if (Cache["YddVisit"] == null)
                        {
                            List<cacheVisit> cvs = new List<cacheVisit>();
                            cvs.Add(cv);
                            Cache.Insert("YddVisit", cvs);
                        }
                        else
                        {
                            List<cacheVisit> cvs = (List<cacheVisit>)Cache["YddVisit"];
                            if (cvs.Count < 10)
                            {

                                cvs.Add(cv);
                                Cache.Insert("YddVisit", cvs);
                            }
                            else
                            {
                                List<cacheVisit> cvs2 = (List<cacheVisit>)Cache["YddVisit"];

                                foreach (cacheVisit cvf in cvs2)
                                {
                                    if (cvf.reurl == "")
                                        EC.Biz.ICBC.ICBC_Product_DailyClickManager.GetInstance().Add(cvf.sysno, "", cvf.ip, cvf.moduleclass);
                                    else
                                        EC.Biz.ICBC.ICBC_Product_DailyClickManager.GetInstance().Add(cvf.sysno, cvf.reurl, cvf.ip, cvf.moduleclass);
                                }

                                Cache.Remove("YddVisit");
                            }
                        }

    每当有10条时统一更新到数据库,实际应该是拼SQL一次执行比较好些!

  • 相关阅读:
    docker运行爬虫代码
    python语法之流程控制(if while for)
    python基本数据类型
    python基本运算符
    python用户交互与格式化输出
    jieba模块基本介绍
    wordcloud库基本介绍
    计算机基础之编程语言
    计算机基础
    python入门之流程控制
  • 原文地址:https://www.cnblogs.com/assion/p/1453613.html
Copyright © 2011-2022 走看看