redis是一个KV型内存数据库,跟普通数据库(mysql)的区别的是:
因为redis非常的简单高效(直接读写内存),所以,redis一般都用来存放零时数据(比特熊的redis每天凌晨自动清空,避免被滥用),比如某个耗时操作的页面缓存等等,从而提高页面的加载速度。
比特熊官方网站本身就依赖redis:邮件队列,耗时页面的缓存等等。
合理使用redis,能很好的提高网站的速度。
目前只有php5.5支持原生redis扩展,其他的php版本请通过下面的第三方库使用:
redis服务器地址:127.0.0.1 / localhost
下面举一个简单的例子,使用开源的php redis库(https://github.com/cheprasov/php-redis-client)
代码如下:
<?php
require (dirname(__DIR__).'/redis/autoloader.php');
// or require (dirname(__DIR__).'/src/autoloader.php');
use RedisClient\RedisClient;
use RedisClient\Client\Version\RedisClient2x6;
// Create new Instance for Redis version 2.8.x with config via factory
// RedisClient: 2.8
// Create new instance of client without factory
$Redis = new RedisClient([
'server' => 'tcp://127.0.0.1:6379', // or 'unix:///tmp/redis.sock'
'timeout' => 2
]);
// Method 'pipeline' without params returns new Pipeline object;
$Pipeline = $Redis->pipeline();
// or $Pipeline = new Pipeline();
$Pipeline->set('foo', 'bar');
var_dump($Redis->pipeline($Pipeline));
echo 'RedisClient: '. $Redis->getSupportedVersion() . PHP_EOL;
echo 'Redis: '. $Redis->info('Server')['redis_version'] . PHP_EOL;
// By default, the client works with the latest stable version of Redis.
// RedisClient: 3.0
// Redis: 3.0.3
上面的代码会插入一个key value,key是 foo,value是 bar.
修改自该开源库的readme说明,输出如下:
array(1) {
[0]=>
bool(true)
}
RedisClient: 3.0
Redis: 3.0.7
然后我在后台命令行读取看看:
说明成功啦。
有一些需要注意的点,希望大家了解:
@小哥3a 自己搜索php怎么用redis了
@moli 表示还没有找到在哪里启动和设置
@小哥3a 可以
@moli 启动了嘛?现在能用了嘛
@小哥3a 哎呀,之前忘记启动redis了
用不来,看了好几遍,都不知道在哪里设置
@越越 没试过,改明儿试试,换个插件试试看
@moli 从记录来看应该是已经缓存了。但是可能因为虚拟主机的缘故无法完全发挥?
@越越 理论上更快呀,可能是刚开始还没缓存好?
@越越 自问自答一下:对比测试了之后发现还是要开着 WP Super Cache 才快。(可能因为缓存类型不一样?)
如果在 WordPress 里启用了 Redis 插件来实现缓存的话,那么像 WP Super Cache 这样的缓存插件就不需要了对吧?