Redis數(shù)據(jù)庫是NoSQL數(shù)據(jù)庫的一種,類似于高德地圖這種軟件中的對于一些地區(qū)等常用信息,我們不免要重復(fù)訪問,如果每次訪問的時(shí)候都要去調(diào)取mysql數(shù)據(jù)庫,難免會(huì)影響使用性能,如果你認(rèn)為Redis是一個(gè)key value store(鍵值存儲), 那可能會(huì)用它來代替MySQL;如果認(rèn)為它是一個(gè)可以持久化的cache(緩存), 可能只是它保存一些頻繁訪問的臨時(shí)數(shù)據(jù)。
1.因?yàn)镽edis是基于內(nèi)存存儲的,而mysql是基于磁盤存儲的
2.Redis是單線程的多路復(fù)用IO
3.Redis存儲的是k-v格式的數(shù)據(jù)。時(shí)間復(fù)雜度是O(1),常數(shù)階,而MySQL引擎的底層實(shí)現(xiàn)是B+Tree,時(shí)間復(fù)雜度是O(logn),對數(shù)階。Redis會(huì)比MySQL快一點(diǎn)點(diǎn)。
查看當(dāng)前庫所有key
判斷某個(gè)key是否存在
查看key是什么類型
刪除key數(shù)據(jù)del和unlink的區(qū)別 del:直接將數(shù)據(jù)刪除 unlink:根據(jù)value選擇非阻塞刪除,僅將keys從keyspace元數(shù)據(jù)中刪除,真正的刪除會(huì)在后續(xù)異步操作
為給定的key設(shè)置過期時(shí)間
查看還有多少秒過期(-1表示永不過期,-2表示已過期)
切換數(shù)據(jù)庫
查看當(dāng)前數(shù)據(jù)庫的key的數(shù)量
flushdb清空當(dāng)前庫
flushall通殺全部庫
原子性:所謂原子操作是指不會(huì)被線程調(diào)度機(jī)制打斷的操作
這種操作一旦開始,就一直運(yùn)行到結(jié)束,中間不會(huì)有任何context switch(切換到另一個(gè)線程)
(1)在單線程中,能夠在單條指令中完成的操作都可以認(rèn)為是“原子操作”,因?yàn)橹袛嘀荒馨l(fā)生于指令之間
(2)在多線程中,不能被其它進(jìn)程(線程)打斷的操作就叫原子操作
Redis單命令的原子性主要得益于Redis的單線程
String的數(shù)據(jù)結(jié)構(gòu)為簡單動(dòng)態(tài)字符串(Simple Dynamic String,縮寫SDS)。是可以修改的字符串,內(nèi)部結(jié)構(gòu)實(shí)現(xiàn)上類似于Java的ArrayList ,采用預(yù)分配冗余空間的方式來減少內(nèi)存的頻繁分配.
如圖中所示,內(nèi)部為當(dāng)前字符串實(shí)際分配的空間capacity-般要高于實(shí)際字符串長度len。當(dāng)字符串長度小于1M時(shí),擴(kuò)容都是加倍現(xiàn)有的空間,如果超過1M ,擴(kuò)容時(shí)一次只會(huì)多擴(kuò)1M的空間。需要注意的是字符串大長度為512M。
Redis列表是簡單的字符串列表,按照插入順序排序。你可以添加一個(gè)元索到列表的頭部(左邊)或者尾部(右邊)。
它的底層實(shí)際是個(gè)雙向鏈表,對兩端的操作性能很高,通過索引下標(biāo)的操作中間的節(jié)點(diǎn)性能會(huì)較差。
List的數(shù)據(jù)結(jié)構(gòu)為快速鏈表quickList
首先在列表元素較少的情況下會(huì)使用一塊連續(xù)的內(nèi)存存儲,這個(gè)結(jié)構(gòu)是ziplist ,也即是壓縮列表
它將所有的元素緊挨著一起存儲 ,分配的是一塊連續(xù)的內(nèi)存
當(dāng)數(shù)據(jù)量比較多的時(shí)候才會(huì)改成qucklist
因?yàn)槠胀ǖ逆湵硇枰母郊又羔樋臻g太大,會(huì)比較浪費(fèi)空間。比如這個(gè)列表里存的只是int類型的數(shù)據(jù),結(jié)構(gòu)上還需要兩個(gè)額外的指針prev和next。
Redis將鏈表和ziplist結(jié)起來組成了quicklist, 也就是將多個(gè)ziplist使用雙向指針串起來使用。這樣既滿足了快速的插入刪除性能,又不會(huì)出現(xiàn)太大的空間冗余。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧
當(dāng)前名稱:Redis簡介-創(chuàng)新互聯(lián)
網(wǎng)站鏈接:http://vcdvsql.cn/article10/pgpgo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、做網(wǎng)站、網(wǎng)站內(nèi)鏈、網(wǎng)站制作、品牌網(wǎng)站制作、App設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容