不同点
1、Redis是存储器数据库。Memcache还可以缓存照片。
Redis和Memcache将数据存储在存储器中,是存储器数据库。但是,Memcache还可以缓存照片和视频等其他东西。Redis不仅支持简单的k/v类型数据,还提供list、set、hash等数据结构的存储。
过期战略,memcache在set时指定。例如,setkey1008永远不会过期。redis可以通过expire设定。例如,expirename10。
存储安全,memcache关闭后,数据消失的redis可以定期保存在磁盘中
灾难恢复,memcache挂断后数据无法恢复的redis数据丢失后,可以通过aof恢复。
redis支持数据备份,即master-slave模式的数据备份。
应用场景不同:
2、redis可以制作nosql数据库、新闻队列等。memcache还能缓存sql语句。
redis不仅可以制作nosql数据库,还可以制作新闻队列、数据堆栈、数据缓存等。memcache适用于缓存sql语句、数据集、用户临时数据、延迟查询数据、session等。
实例
连接Redis服务
<?php $redis = new redis(); //生成redis类的对象,生成之后可以用这个类里面的方法 $redis->connect('127.0.0.1',6379); //连接redis的ip地址端口号 $redis->set('redistest','666666'); // 给redistest赋值为666666 echo $redis->get('redistest'); //获取redistest的值 ?>
Memcached的使用
<?php $memcache = new Memcache; $memcache->connect("127.0.0.1",11211) or die("Memcached connected failed"); echo "Memcached's version: " . $memcache->getVersion() . "<br />"; $data = array( 'url' => "http://www.cnblogs.com/wujuntian/", 'name' => "编程人,在天涯" ); $memcache -> set("info",$data,0,10); $info = $memcache->get("info"); echo '<pre>'; print_r($info); ?>
以上就是php中Redis和Memcached的不同,希望对大家有所帮助。