不同點
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的不同,希望對大家有幫助。