1. 程式人生 > 其它 >乾貨!還沒搞懂Java中的路徑

乾貨!還沒搞懂Java中的路徑

乾貨!還沒搞懂Java中的路徑

概述

  1. 什麼是Redis
  2. Redis有哪些優缺點
  3. 為什麼要用Redis /為什麼要用快取
  4. 為什麼要用Redis而不用map/guava做快取?
  5. Redis為什麼這麼快

二、資料型別

  1. Redis有哪些資料型別
  2. Redis的應用場景

三、持久化

  1. 什麼是Redis持久化?
  2. Redis的持久化機制是什麼?各自的優缺點?
  3. 如何選擇合適的持久化方式
  4. Redis持久化資料和快取怎麼做擴容?

四、過期鍵的刪除策略

  1. Redis的過期鍵的刪除策略
  2. Redis key的過期時間和永久有效分別怎麼設定?
  3. 我們知道通過expire來設定key的過期時間,那麼對過期的資料怎麼處理呢?

五、記憶體相關

  1. MySQL裡有2000w資料,redis中只存20w的資料, 如何保證redis中的資料都是熱點資料
  2. Redis的記憶體海汰策略有哪些
  3. Redis主要消耗什麼物理資源?
  4. Redis的記憶體用完了會發生什麼?
  5. Redis如何做記憶體優化?

六執行緒模型

  1. Redis執行緒模型

七.事務

  1. 什麼是事務?
  2. Redis事務的概念
  3. Redis事務的三個階段
  4. Redis事務相關命令
  5. 事務管理(ACID)概述
  6. Redis事務支援隔離性嗎
  7. Redis事務保證原子性嗎,支援回滾嗎
  8. Redis事務其他實現

八叢集方案

  1. 哨兵模式.
  2. 官方Redis Cluster 方案(服務端路由查詢)
  3. 基於客戶端分配
  4. 基於代理伺服器分片
  5. Redis主從架構
  6. Redis叢集的主從複製模型是怎樣的?
  7. 生產環境中的redis是怎麼部署的?
  8. 說說Redis雜湊椿的概念?
  9. Redis叢集會有寫操作丟失嗎?為什麼?
  10. Redis叢集之間是如何複製的?
  11. Redis叢集最大節點個數是多少?
  12. Redis叢集如何選擇資料庫?

九、分割槽

  1. Redis是單執行緒的,如何提高多核CPU的利用率?
  2. 為什麼要做Redis分割槽?
  3. 你知道有哪些Redis分割槽實現方案?
  4. Redis分割槽有什麼缺點?

十、分散式問題

  1. Redis實現分散式鎖
  2. 如何解決Redis的併發競爭Key問題
  3. 分散式Redis是前期做還是後期規模上來了再做好?為什麼?
  4. 什麼是RedLock

十一、快取異常

  1. 快取雪崩
  2. 快取穿透
  3. 快取擊穿
  4. 快取預熱
  5. 快取降級
  6. 熱點資料和冷資料
  7. 快取熱點key

十二、常用工具

  1. Redis支援的Java客戶端都有哪些?官方推薦用哪個?
  2. Redis和Redisson有什麼關係?
  3. Jedis與Redisson對比有什麼優缺點?

十三、其他問題

  1. Redis與Memcached的區別
  2. 如何保證快取與資料庫雙寫時的資料一致性?
  3. Redis常見效能問題和解決方案?
  4. Redis官方為什麼不提供Windows版本?
  5. 一個字串型別的值能儲存最大容量是多少?
  6. Redis如何做大量資料插入?
  7. 假如Redis裡面有1億個key,其中有10w個key是以某個固定的已知的字首開頭的,如果將它們全部找出來?
  8. 使用Redis做過非同步佇列嗎,是如何實現的
  9. Redis如何實現延時佇列
  10. Redis回收程序如何工作的?
  11. Redis回收使用的是什麼演算法?

Redis面試複習大綱部分截圖-001

最後

按照上面的過程,4個月的時間剛剛好。當然Java的體系是很龐大的,還有很多更高階的技能需要掌握,但不要著急,這些完全可以放到以後工作中邊用別學。

學習程式設計就是一個由混沌到有序的過程,所以你在學習過程中,如果一時碰到理解不了的知識點,大可不必沮喪,更不要氣餒,這都是正常的不能再正常的事情了,不過是“人同此心,心同此理”的暫時而已。

道路是曲折的,前途是光明的!”

更多Java核心筆記、真實面經、學習筆記等知識乾貨可以點選這裡免費領取