<<^^>>努力不一定有回报,不努力一定没有回报。

信息展示

昵称:aliveto 邮箱:some_body@foxmail.com

redis

一:简介

  • redis是web server 最常用的缓存数据库,数据存放在内存中(内存读写速度快,但断点后数据可能会丢失,为了防止断点不丢失数据得对数据库进行配置)
  • 相比与mysql,访问速度快(mysql是硬盘数据库)
  • 内存的成本比较高,存储的数据量小,

二:redis使用场景

session数据的存储:用nodejs实现的后台处理程序,其登入验证–>cookie & session & redis结合=>cookie做唯一标识,redis做session数据的存储。

session为何适合redis?

  • session访问的频率高,对性能的要求极高
  • session不用考虑断电数据丢失的问题(丢了就打不了重新登入一下)
  • session需要存的数据量不会很大,比如用户名,qq,性别等个人信息

二:为什么网站的数据不用redis

  • 网站的数据操作频率不高
  • 网站的数据必须保证断电后数据不会丢失
  • 数据量大,放在redis中内存的成本很高

三:安装

四:使用

  • 打开一个cmd窗口,执行redis-server.exe就可以启动redis了(因为设置了系统变量,所以直接运行 redis-server就能启动redis
  • 若没有上面配置系统变量,则先进入安装的文件夹如c:\Redis>redisserver.exe redis.windows.conf
  • 这时候另启一个 cmd 窗口,原来的不要关闭,不然就无法访问服务端了,切换到 redis 目录下运行:rediscli.exe h 127.0.0.1 p 6379(-h 是设置主机,-p设置端口,一般默认就是这个可直接运行:redis-cli)

常用的命令:set / get / del

    • set:设置值
127.0.0.1:6379>set name xxx  >> ok
    • get:  获取值
 127.0.0.1:6379>get name >> "xxx" //(字符串类型的值)
    • del:  删除值
127.0.0.1:6379>del name
    • 查看所有的key值
127.0.0.1:6379>keys *  >> 显示所有的key值

五:node连接redis,操作redis

1.连接 && 操作

    • 装包
upm install redis --save
    • index.js文件中

   const redis = require('redis') 

   const redisClient = redis.createClient(6379,'122.0.0.1')  //创建客服端

   redisClient.on('error',err => {
               console.log(err)    //要先监听下,当发生错误时的处理程序
   }

   //设置key-value
   redisClient.set('name','zhangsan',redis.print)   //redis.print 成功后打印OK的函数

   //获取key 对应的 value
   redisClient.get('name', (err, val) => {
              if(err){
                console.log(err)
     }
     console.log(val) //name对应的 value

     //关闭连接(退出)
     redisClient.quit() 
})
  • 注意的是:上面的脚本中:get查询是异步的。