前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >emlog缓存文件优化 加快文章发布速度/缓存速度

emlog缓存文件优化 加快文章发布速度/缓存速度

作者头像
用户8099761
发布2023-05-11 11:54:12
5680
发布2023-05-11 11:54:12
举报
文章被收录于专栏:私人订制私人订制

今天分享一下Emlog网站优化,如何加快网站的缓存速度,加快文章发布速度的方法

Emlog是基于PHP+MYSQL的运行环境,那么缓存来源于MYSQL数据库,加快缓存速度,就是要加快MYSQL的查询速度 针对MYSQL的查询优化,有建索引等等,还有重要一点“SELECT * ”类似这样的SQL查询语句要少用 当表内某字段存在“NULL”值时,查询就会很慢,当数据量大了之后会更慢! 所以有两个优化方向,尽量减少数据库中的NULL值(空字符串) 其二就是优化SQL查询语句,建立索引 那么针对EMLOG缓存,我们就可以针对性优化 本站的优化就需要在用户表数据这里处理,因为用户过多导致用户缓存数据特别慢。

1、用户缓存修改方法:

打开根目录下的“include\lib\cache.php”将用户数据缓存这里替换一下,代码如下:

未修改前:

代码语言:javascript
复制
/**
 * 用户信息缓存
 */
private function mc_user() {
$user_cache = array();
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "user");
while ($row = $this->db->fetch_array($query)) {
    $photo = array();
    $avatar = '';
    if(!empty($row['photo'])){
        $photosrc = str_replace("../", '', $row['photo']);
        $imgsize = chImageSize($row['photo'], Option::ICON_MAX_W, Option::ICON_MAX_H);
        $photo['src'] = htmlspecialchars($photosrc);
        $photo['width'] = $imgsize['w'];
        $photo['height'] = $imgsize['h'];

        $avatar = strstr($photosrc, 'thum') ? str_replace('thum', 'thum52', $photosrc) : preg_replace("/^(.*)\/(.*)$/", "\$1/thum52-\$2", $photosrc);
        $avatar = file_exists('../' . $avatar) ? $avatar : $photosrc;
    }
    $row['nickname'] = empty($row['nickname']) ? $row['username'] : $row['nickname'];
    $user_cache[$row['uid']] = array(
        'photo' => $photo,
        'avatar' => $avatar,
        'name_orig' => $row['nickname'],
        'name' => htmlspecialchars($row['nickname']),
        'mail' => htmlspecialchars($row['email']),
        'des' => htmlClean($row['description']),
        'ischeck' => htmlspecialchars($row['ischeck']),
        'role' => $row['role'],
        );
}
$cacheData = serialize($user_cache);
$this->cacheWrite($cacheData, 'user');
}

替换为下面代码:

代码语言:javascript
复制
/**
 * 用户信息缓存
 */
private function mc_user() {
    $user_cache = array();
    $query = $this->db->query("SELECT uid,username,nickname,role,ischeck,photo,email,description FROM " . DB_PREFIX . "user");
    while ($row = $this->db->fetch_array($query)) {
        // $photo = array();
        /*
        $avatar = '';
        if(!empty($row['photo'])){
            $photosrc = str_replace("../", '', $row['photo']);
            $imgsize = chImageSize($row['photo'], Option::ICON_MAX_W, Option::ICON_MAX_H);
            $photo['src'] = htmlspecialchars($photosrc);
            $photo['width'] = $imgsize['w'];
            $photo['height'] = $imgsize['h'];

            $avatar = strstr($photosrc, 'thum') ? str_replace('thum', 'thum52', $photosrc) : preg_replace("/^(.*)\/(.*)$/", "\$1/thum52-\$2", $photosrc);
            $avatar = file_exists('../' . $avatar) ? $avatar : $photosrc;
        }*/
        $row['nickname'] = empty($row['nickname']) ? $row['username'] : $row['nickname'];
        $user_cache[$row['uid']] = array(
            'photo' => $row['photo'],
            'avatar' => $row['photo'],
            'name_orig' => $row['nickname'],
            'name' => htmlspecialchars($row['nickname']),
            'mail' => htmlspecialchars($row['email']),
            'des' => htmlClean($row['description']),
            'ischeck' => htmlspecialchars($row['ischeck']),
            'role' => $row['role'],
            );
    }
    $cacheData = serialize($user_cache);
    $this->cacheWrite($cacheData, 'user');
}

2、emlog核心优化方法:

打开“admin\save_log.php”文件搜索:

代码语言:javascript
复制
// 源代码
$CACHE->updateCache();

// 修改为:
$CACHE->updateCache(array('sta', 'tags', 'newlog', 'logsort', 'logtags'));
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-9-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、用户缓存修改方法:
  • 未修改前:
  • 替换为下面代码:
  • 2、emlog核心优化方法:
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档