1. 什么是Redis
Redis是由意大利人Salvatore Sanfilippo(網(wǎng)名:antirez)開發(fā)的一款內(nèi)存高速緩存數(shù)據(jù)庫。Redis全稱為:Remote Dictionary Server(遠程數(shù)據(jù)服務(wù)),該軟件使用C語言編寫,Redis是一個key-value存儲系統(tǒng),它支持豐富的數(shù)據(jù)類型,如:string、list、set、zset(sorted set)、hash。
2. Redis特點
Redis以內(nèi)存作為數(shù)據(jù)存儲介質(zhì),所以讀寫數(shù)據(jù)的效率極高,遠遠超過數(shù)據(jù)庫。以設(shè)置和獲取一個256字節(jié)字符串為例,它的讀取速度可高達110000次/s,寫速度高達81000次/s。
Redis跟memcache不同的是,儲存在Redis中的數(shù)據(jù)是持久化的,斷電或重啟后,數(shù)據(jù)也不會丟失。因為Redis的存儲分為內(nèi)存存儲、磁盤存儲和log文件三部分,重啟后,Redis可以從磁盤重新將數(shù)據(jù)加載到內(nèi)存中,這些可以通過配置文件對其進行配置,正因為這樣,Redis才能實現(xiàn)持久化。
Redis支持主從模式,可以配置集群,這樣更利于支撐起大型的項目,這也是Redis的一大亮點。
3. Redis應(yīng)用場景,它能做什么
眾多語言都支持Redis,因為Redis交換數(shù)據(jù)快,所以在服務(wù)器中常用來存儲一些需要頻繁調(diào)取的數(shù)據(jù),這樣可以大大節(jié)省系統(tǒng)直接讀取磁盤來獲得數(shù)據(jù)的I/O開銷,更重要的是可以極大提升速度。
拿大型網(wǎng)站來舉個例子,比如a網(wǎng)站首頁一天有100萬人訪問,其中有一個板塊為推薦新聞。要是直接從數(shù)據(jù)庫查詢,那么一天就要多消耗100萬次數(shù)據(jù)庫請求。上面已經(jīng)說過,Redis支持豐富的數(shù)據(jù)類型,所以這完全可以用Redis來完成,將這種熱點數(shù)據(jù)存到Redis(內(nèi)存)中,要用的時候,直接從內(nèi)存取,極大的提高了速度和節(jié)約了服務(wù)器的開銷。
總之,Redis的應(yīng)用是非常廣泛的,而且極有價值,真是服務(wù)器中的一件利器,所以從現(xiàn)在開始,我們就來一步步學(xué)好它。
文章出自:http://www.daixiaorui.com/read/188.html 本站所有文章,除注明出處外皆為原創(chuàng),轉(zhuǎn)載請注明本文地址,版權(quán)所有。
聯(lián)系客服