nodejs-第三章-第一节-nodejs-NoSql数据库

内容索引(非关系型数据库)

  • redis开发(内存型)
  • Memcached(内存型)
  • MongoDb(存储型)

内存型:读取速度快,容量小 存贮型:读取速度慢,存量大node

NoSQL主要应用场景
  • 专门应对高并发,须要高速读写的场景,redis,性能十分优越,能够支持每秒是几万次的读/写操做,其性能远超数据库,而且还支持集群、分布式、主从同步等配置;
  • 天猫双11
  • 抢红包、抢火车票
  • ssr服务端渲染

redis

  • 内容索引
    • 特色
    • api
    • 结合nodejs应用
  • 特色
    • 存储结构特别 - 字典
    • 内存存储与持久化 - 缓存
    • 功能丰富
    • 简单稳定 - 简单可依赖
  • 存贮结构
    • Redis是REmote dictionary server(远程字典服务器)的缩写,它以字典结构存储;

字典就是js中object 能够进行交集、并集等集合操做, js中的键的类型只能是字符串,若是是其余类型,默认作了toString操做;redis

  • 同大多数语言的字典同样,Redis的键值除了是字符串,也能够是其余数据类型;
    • 字符串
    • 散列
    • 列表
    • 集合
    • 有序集合
  • 内存存贮与持久化
    • redis数据库中全部的数据都存在内存中,一台普通的笔记本电脑,redis一秒可读写超过十万个键值对;可是数据存在内存中,程序退出致使数据丢失,不过redis也提供了对数据持久化的支持;
  • 功能丰富
    • 缓存
    • 队列系统(高并发)
  1. redis能够为每一个key设置生存时间,到期会自动删除,这一功能配合出色的性能能让它做为缓存系统来使用;
  2. 做为缓存系统,redis还能够限定数据占的最大空间,超事后自动删除没必要要的key;
  3. redis的列表类型键还能够用来实现队列,并支持阻塞式读取,能够很容易实现一个高性能的优先级队列;
  4. redis还支持 “订阅/发布”,所以能够用来构建聊天室;
  • 简单稳定
    • redis的直观的存贮结构使得经过程序与redis交互十分简单,在redis中使用命令来读写数据;命令语句之于redis就至关于sql语句之与关系型数据库;
  • 源代码量只有3万多行,可定制
相关文章
相关标签/搜索