Redis 是一個開源的使用ANSI C語言編寫、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫,并提供多種語言的API。與memcached一樣,為了保證效率,數(shù)據(jù)都是緩存在內(nèi)存中。不同的是,Redis會周期性的把更新的數(shù)據(jù)寫入磁盤或者把修改操作寫入追加的記錄文件,并且在此基礎(chǔ)上實現(xiàn)了master-slave(主從)同步。
宜人貸認(rèn)為,Redis的具體優(yōu)勢主要表現(xiàn)在以下幾個方面:
內(nèi)存永不溢出。Redis主要有兩種策略機制來保障存儲的key-value數(shù)據(jù)不會把內(nèi)存塞滿,它們是:過期策略和淘汰策略。“過期策略” 保證過期的key對應(yīng)的數(shù)據(jù)會被及時清除;“淘汰策略”保證內(nèi)存滿的時候會自動釋放相應(yīng)空間,因此Redis的內(nèi)存可以自運行,保證不會產(chǎn)生溢出異常。
宕機可立即恢復(fù)數(shù)據(jù)到內(nèi)存。Redis的持久化機制,可以保障服務(wù)器宕機或重啟,原來緩存在內(nèi)存中的數(shù)據(jù)不會丟失。Redis通過RDB(快照全量持久化)和AOF(增量日志持久化)這兩種持久化策略,使內(nèi)存擁有持久化機制,因此Redis即使服務(wù)器宕機或重啟了,也可以最大限度的恢復(fù)數(shù)據(jù)到內(nèi)存中,提供給client繼續(xù)使用。
可戰(zhàn)到最后一兵一卒的高可用集群。我們把它稱為“哨兵模式”,就是有一群哨兵(Sentinel)在Redis服務(wù)器前面幫我們監(jiān)控Redis集群中各個機器的運行情況,并且哨兵間相互通告通知,并指引我們使用那些健康的服務(wù)。有了“哨兵模式”,只要集群中有一個Redis服務(wù)器還健康存活,哨兵就能把這個健康的Redis服務(wù)器提供給我們,那么我們客戶端的鏈接就不會出錯。因此,Redis集群可以戰(zhàn)斗至最后一兵一卒。
宜人貸認(rèn)為,大家可以通過以上幾方面理解并運用Redis,從而對我們的工作提供幫助。Redis 作為當(dāng)前互聯(lián)網(wǎng)世界最為流行的 NoSQL(Not Only SQL)數(shù)據(jù)庫,未來必將在更大程度上提高互聯(lián)網(wǎng)系統(tǒng)的性能。
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個人認(rèn)為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )