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万多行,可定制
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章