ecshop的缓存机制更改

简介: ecshop是一个不错的平台,其中有一些地方可以改进一下 总体上看,就是一个大sql,global变量传来传去的,所有的只要取数据的时候,执行一个sql语句就可以了,但是一些需要缓存的地方,它使用的是文件缓存, 在这一点上,我觉得可以使用memcahced这个缓存机制来实现在includes中的init文件中加入以下代码 $mem = new Memcache;$mem->

ecshop是一个不错的平台,其中有一些地方可以改进一下

总体上看,就是一个大sql,global变量传来传去的,所有的只要取数据的时候,执行一个sql语句就可以了,但是一些需要缓存的地方,它使用的是文件缓存,

在这一点上,我觉得可以使用memcahced这个缓存机制来实现在includes中的init文件中加入以下代码

$mem = new Memcache;
$mem->connect("localhost", 11211);

然后在lib_common中加入以下代码

function getcache($mem_key)
{
    $mem=$GLOBALS["mem"];
    $storeinfo= $mem->get($mem_key);
    return $storeinfo;

}

function setcache($mem_key,$storeinfo)
{
    $mem=$GLOBALS["mem"];
    $mem->set($mem_key, $storeinfo, 0, 36000);
}



这样就可以使用这个函数来保存数据了,举个例子

    $key="get_louceng".$louid;
    $mem_key=md5($key);
    $cache=getcache($mem_key);
    if($cache)
    {
       // var_dump($cache);
        return $cache;
    }
加入取数据的代码
    setcache($mem_key,$data);
    return $data;




相关文章
|
3月前
|
存储 缓存 前端开发
HTTP的缓存机制是什么?
HTTP的缓存机制是什么?
28 1
|
6月前
|
SQL 缓存 Java
Mybatis-plus缓存机制
MyBatis-Plus(简称MP)是一个基于MyBatis的增强工具,提供了更便捷的CRUD操作和其他功能。与MyBatis相比,MyBatis-Plus并没有引入自己的缓存机制,而是直接使用了MyBatis的缓存机制。 在MyBatis中,缓存分为一级缓存和二级缓存。 1. 一级缓存:一级缓存是SqlSession级别的缓存,它默认是开启的。当查询操作执行时,查询的结果会被缓存在SqlSession的内部数据结构中。如果后续再次执行相同的查询,MyBatis会先检查一级缓存中是否存在结果,如果存在则直接返回缓存的结果,而不会再次执行SQL语句。一级缓存的生命周期与SqlSession相同,
231 0
|
7月前
|
缓存 Java 数据库连接
深入浅出 MyBatis 的一级、二级缓存机制
深入浅出 MyBatis 的一级、二级缓存机制
138 0
|
6月前
|
存储 缓存 Java
【面试题精讲】Java包装类缓存机制
【面试题精讲】Java包装类缓存机制
|
7月前
|
存储 缓存 BI
06-OC方法缓存机制cache_t
06-OC方法缓存机制cache_t
65 0
|
3月前
|
存储 消息中间件 缓存
redis的缓存机制
redis的缓存机制
92 0
|
2天前
|
缓存 Linux
linux系统缓存机制
linux系统缓存机制
|
13天前
|
XML 缓存 Java
MyBatis二级缓存解密:深入探究缓存机制与应用场景
MyBatis二级缓存解密:深入探究缓存机制与应用场景
49 2
MyBatis二级缓存解密:深入探究缓存机制与应用场景
|
1月前
|
存储 缓存 算法
深入探究LRU缓存机制:优化内存利用与提升性能
深入探究LRU缓存机制:优化内存利用与提升性能
142 1
|
1月前
|
存储 缓存 Java
什么!?实战项目竟然撞到阿里面试的原题!???关于MyBatis Plus的缓存机制
什么!?实战项目竟然撞到阿里面试的原题!???关于MyBatis Plus的缓存机制

热门文章

最新文章