nodejs-第三章-第一節-nodejs-NoSql數據庫

內容索引(非關係型數據庫)

  • redis開發(內存型)
  • Memcached(內存型)
  • MongoDb(存儲型)

內存型:讀取速度快,容量小 存貯型:讀取速度慢,存量大

NoSQL主要應用場景
  • 專門應對高併發,需要高速讀寫的場景,redis,性能十分優越,可以支持每秒是幾萬次的讀/寫操作,其性能遠超數據庫,並且還支持集羣、分佈式、主從同步等配置;
  • 天貓雙11
  • 搶紅包、搶火車票
  • ssr服務端渲染

redis

  • 內容索引
    • 特點
    • api
    • 結合nodejs應用
  • 特點
    • 存儲結構特別 - 字典
    • 內存存儲與持久化 - 緩存
    • 功能豐富
    • 簡單穩定 - 簡單可依賴
  • 存貯結構
    • Redis是REmote dictionary server(遠程字典服務器)的縮寫,它以字典結構存儲;

字典就是js中object 可以進行交集、並集等集合操作, js中的鍵的類型只能是字符串,如果是其他類型,默認做了toString操作;

  • 同大多數語言的字典一樣,Redis的鍵值除了是字符串,也可以是其他數據類型;
    • 字符串
    • 散列
    • 列表
    • 集合
    • 有序集合
  • 內存存貯與持久化
    • redis數據庫中所有的數據都存在內存中,一臺普通的筆記本電腦,redis一秒可讀寫超過十萬個鍵值對;但是數據存在內存中,程序退出導致數據丟失,不過redis也提供了對數據持久化的支持;
  • 功能豐富
    • 緩存
    • 隊列系統(高併發)
  1. redis可以爲每個key設置生存時間,到期會自動刪除,這一功能配合出色的性能能讓它作爲緩存系統來使用;
  2. 作爲緩存系統,redis還可以限定數據佔的最大空間,超過後自動刪除不必要的key;
  3. redis的列表類型鍵還可以用來實現隊列,並支持阻塞式讀取,可以很容易實現一個高性能的優先級隊列;
  4. redis還支持 “訂閱/發佈”,因此可以用來構建聊天室;
  • 簡單穩定
    • redis的直觀的存貯結構使得通過程序與redis交互十分簡單,在redis中使用命令來讀寫數據;命令語句之於redis就相當於sql語句之與關係型數據庫;
  • 源代碼量只有3萬多行,可定製
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章