redis識知點整理

1.Redis支持的數據類型?
Redis支持五種數據類型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
2.什麼是Redis持久化?Redis有哪幾種持久化方式?優缺點是什麼?
RDB 持久化:該機制可以在指定的時間間隔內生成數據集的時間點快照(point-in-time snapshot)。
AOF 持久化:記錄服務器執行的所有寫操作命令,並在服務器啓動時,通過重新執行這些命令來還原數據集。AOF文件中的命令全部以 Redis 協議的格式來保存,新命令會被追加到文件的末尾。 Redis 還可以在後臺對 AOF 文件進行重寫(rewrite),使得 AOF 文件的體積不會超出保存數據集狀態所需的實際大小
無持久化:讓數據只在服務器運行時存
https://www.cnblogs.com/caotao0918/p/10804304.html
3.Redis 有哪些架構模式?講講各自的特點
https://blog.csdn.net/qq_35958788/article/details/82876266
4.使用過Redis分佈式鎖麼,它是怎麼實現的?
5.使用過Redis做異步隊列麼,你是怎麼用的?有什麼缺點?
一般使用 list 結構作爲隊列,rpush 生產消息,lpop 消費消息。當 lpop 沒有 消息的時候,要適當 sleep 一會再重試。如果對方追問可不可以不用 sleep 呢?list 還有個指令叫 blpop,在沒有消息的時候,它會阻塞住直到消息到來。如果對 方追問能不能生產一次消費多次呢?使用 pub/sub 主題訂閱者模式,可以實現 1:N 的消息隊列。如果對方追問 pub/sub 有什麼缺點?在消費者下線的情況下,生產的消息會丟失,得使用專業的消息隊列如 RabbitMQ等。
如果對方追問 redis 如何實現延時隊列?
使用 sortedset,拿時間戳作爲 score,消息內容作爲 key 調用 zadd 來生產消息,消費者用 zrangebyscore 指令 獲取 N 秒之前的數據輪詢進行處理。到這裏,面試官暗地裏已經對你豎起了大拇 指。但是他不知道的是此刻你卻豎起了中指,在椅子背後。
6.什麼是緩存穿透?如何避免?什麼是緩存雪崩?何如避免?
7.Redis常用命令
8.爲什麼Redis 單線程卻能支撐高併發?
9.說說Redis的內存淘汰策略
10.Redis的併發競爭問題如何解決?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章