2天对我来说有点煎熬。。数据量达到17w的时候 我本地执行查询速度特别慢!
请教了一些php大牛如何解决速度问题,在加了索引和优化sql后还是速度慢!我决定在win环境下用Memcached和memcache 来处理,先声明一下:
memcache是php的拓展,memcached是客户端,复杂的说:Memcache模块提供了于memcached方便的面向过程及面向对象的接口,memcached是为了降低动态web应用 从数据库加载数据而产生的一种常驻进程缓存产品。
因为我本地用的是xampp集成环境,为了避免带大家走误区 直接把地址和文件步骤列出来
安装
Windows 64位 memcached下载地址:http://www.urielkatz.com/projects/memcached-win64/memcached-win64.zip
1.安装memacached.exe
①c盘下新建一个memcached文件夹,将下载memcached解压到这个文件夹
②在开始中输入cmd,找到cmd.exe程序,在上面点右键,选择“以管理员身份运行”
③输入 : cmd c:/memcached
④输入 :memcached.exe -d install //安装memcached
⑤输入 :memcached.exe -d start //启动memcached
2.安装php_memcached.dll 我本地环境用的是xampp是32位x86
①到后面的页面下载memcache.dll http://pecl.php.net/package/memcache/3.0.8/windows
// 要下载跟自己的软件集成包版本一致的dll文件,如: ①你的xampp是32位的,你就需要下载x86的 ②phpinfo()中显示 Thread Safety(线程安全):enabled 你需要下载 TS的否则,下载NTS
②将下载的dll文件拷贝到../php/ext 目录下
③在php.in中添加 extension=php_memcache.dll
④重启apace
3.使用memcahe
$mem = new Memcache;
$mem->connect("127.0.0.1", 11211);
$mem->set(‘key‘, ‘Hello Memcached!‘, 0, 60);
$val = $mem->get(‘key‘);
echo $val;
//输出:Hello Memcached!,则表明安装成功,可以使用memcached了
//下面是yii2中使用memcached的用法
$memcached = Yii::$app->cache->add(‘sex‘,‘nan‘);
$memcachedGet = Yii::$app->cache->get(‘sex‘);
echo $memcachedGet;
最后如果页面输出:Hello Memcached! 恭喜你 安装成功了!