redis的執行緒模型
為啥redis單執行緒模型也能效率那麼高
(1).redis支援伺服器端的資料操作:redis相比memcached 來說,擁有更多的資料結果和並支援更多的資料庫操作,通常在memcached裡,你需要將資料拿到客戶端進行類似的修改再set 回去。這大大的增加了網路io的次數和資料體積。 在redis眾,這些複雜的操作通常和一半的get/set一樣高效。如果需要快取能夠支援更多的複雜的結構和操作,那麼redis會是個不錯的選擇。
(2).記憶體使用效率對比:使用簡單的key-value儲存的話,memcached記憶體利用率更高,而如果redis採用hash結構來做key-value儲存,由於其組合式的壓縮,記憶體利用率會高於memcached。
(3).效能對比:由於redis只使用單核,而memcached可以使用多核,所以平均每乙個核上redis在儲存小資料時比memcached效能更高。而在100k以上的資料中,memcached效能要高於redis,雖然redis最近也在儲存大資料的效能上進行優化,但是比起memcached,還是稍有遜色
(4).集群模式:memcached沒有原生的集群模式,需要依靠客戶端來實現往集群中分片寫入資料;但是redis目前是原生支援cluster模式的,redis官方就是支援redis cluster集群模式的,比memcached來說要更好
redis的執行緒圖
Redis 一些常用的技術
1.基礎事務 2.redis事務回滾 3.使用watch命令監控事務 4.流水線 pipelined 5.發布訂閱 6.超時命令 7.使用lua語言 redis事務是使用multi exec的命令組合,提供兩個重要的保證 在redis中使用事務經歷三個過程 其它redis事務命令 在執行事務命令的時...
關於redis的一些面試題
一.使用redis有哪些好處?1.速度快,因為資料是存在記憶體中的。2.支援豐富的資料型別,string,list,set,sorted set,hash 3.支援事務,操作都有原子性,也就是對陣列的更改要麼不執行,要麼全部執行。4.豐富的特性 可用於快取,訊息,按key設定過期時間,過期後自動刪除...
CSS面試可能會問到的問題
更多flex布局參考 更多的相容參考鏈結 當乙個元素的visibility屬性被設定成collapse值後,對於一般的元素,它的表現跟hidden是一樣的。自動變成display block,因此,可以直接設定浮動元素的寬高 通過 查詢可以為不同大小和尺寸的 定義不同的css,適應相應的裝置的顯示。...