DTCMS缓存的读取以优化网站速度

Posted 洞悉科学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DTCMS缓存的读取以优化网站速度相关的知识,希望对你有一定的参考价值。


一、\DTcms.Web.UI\BasePage.cs,添加方法get_cache_data
  /// <summary>
       /// 获取缓存数据
       /// </summary>
       /// <param name="key"></param>
       /// <returns></returns>
       public static DataTable get_cache_data(string key)
      {
           var data = CacheHelper.Get(key);
           if (data != null)
          {
               return (DataTable)data;
          }
           else
          {
               return null;
          }
      }
二、\DTcms.Web.UI\Label\article.cs,修改方法get_article_list
    /// <summary>
   /// 文章列表
   /// </summary>
   /// <param name="channel_name">频道名称</param>
   /// <param name="category_id">分类ID</param>
   /// <param name="top">显示条数</param>
   /// <param name="strwhere">查询条件</param>
   /// <returns>DataTable</returns>
   protected DataTable get_article_list(string channel_name, int category_id, int top, string strwhere)
  {
       DataTable dt = new DataTable();
       string key = Utils.MD5(channel_name + category_id + top + strwhere);
       dt = get_cache_data(key);
       if (dt == null)
      {
           if (!string.IsNullOrEmpty(channel_name))
          {
               dt = new BLL.article().GetList(channel_name, category_id, top, strwhere, "sort_id asc,add_time desc").Tables[0];
               if (dt != null)
              {
                   CacheHelper.Insert(key, dt);
              }
          }
           return dt;
      }
       return dt;
  }


以上是关于DTCMS缓存的读取以优化网站速度的主要内容,如果未能解决你的问题,请参考以下文章

DTcms网站伪静态逻辑

说说 CDN缓存插件速度优化那些事儿

如何在没有缓存的情况下测量文件读取速度?

采用SSD缓存优化SSD硬盘速度

缓存专题

怎么优化wordpress网站