Thinkphp5系统分类别、可视化缓存强制刷新,减轻系统压力

本文探讨了技术新人在使用缓存时常遇到的问题,即随意的key值可能导致系统性能下降。作者分享了一个改良的Thinkphp中cache助手方法,通过tag对缓存进行分类管理,以防止一键清除带来的数据库压力。通过定义tag,可以实现缓存的可视化删除,提高了网站的可维护性和性能。
摘要由CSDN通过智能技术生成

很多技术新人在使用缓存上未遵循分门别类的思路,缓存key值做的比较随意,当系统遇到内存拥堵的情况下整个网站都缓慢了,如果用一键清除又会导致数据库查询量暴增,看完本篇希望能够给你一个新思路。

例如在Thinkphp中,用cache助手方法非常方便,在我们系统开发支出可能只想到了功能实现和局部的缓存应用,但是当网站规模上升后再来做缓存管理已经是比较晚了。我在板砖博客的设计中期考虑到了这个问题,于是稍微改造了一下cache助手方法:


/**
 * 为了预防cache出错,做的判断
 * @param unknown tag前缀
 * @param unknown 名称
 * @param string $value 当不写value的时候是获取,写的时候是赋值
 * @return mixed|\think\cache\Driver|boolean|NULL
 */
function dcache($tag, $name, $value = '', $outtime = 3600)
{

    if (config('cache_status') == 0) {
        return null;
    }

    try {
        if ($value == '') {
            return cache($name);
        }

        if ($tag) {
            return Cache::tag($tag)->set($name, $value, $outtime);
        }

        return cache($name, $value, $outtime);

    } catch (Exception $e) {
        return null;
    }
}

通过tag将各模块缓存分类,tag值你可以在系统中define会比较方便使用,删除时可以达到板砖博客的缓存管理可视化效果,如下图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值