为了账号安全,请及时绑定邮箱和手机立即绑定

【九月打卡】第10天 Node.js工程师学习笔记

课程章节: Node框架实战篇 - Redis 缓存

课程讲师: 北瑶

课程内容:

什么是redis?
  • 内存存储数据库
    内存数据库, 顾名思义就是将数据放在内存中直接操作`的数据库, 相对于磁盘, 内存的数据读写速度要高出几个数量级, 将数据保存在内存中相比从磁盘上访问能够极大地提高应用的性能

  • redis 的特点

    • 内存数据库,速度快,也支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
    • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
    • Redis支持数据的备份,即master-slave模式的数据备份。
    • 支持事务
  • redis 的应用场景
    抽奖, 点赞&取消点赞等等

安装redis

npm install ioredis
windows环境下的redis需要在github中获取
下载地址: https://github.com/MicrosoftArchive/redis/releases

下载 选择.msi格式的安装版本(因为.zip版本的需要通过命令安装)

检查是否安装
redis-cli

keys *展示所有的 key
quit 退出
ping 查看是否连接
redis-cli -h ip地址 -p 端口号 -a 密码 连接指定的数据库
info server 查看配置

redis的常用数据类型类型及键名

使用 node 操作 redis

// Import ioredis.
// You can also use `import Redis from "ioredis"`
// if your project is a TypeScript project,
// or `import { default as Redis } from "ioredis"`
// if it is an ESM module.
const Redis = require("ioredis");

// Create a Redis instance.
// By default, it will connect to localhost:6379.
// We are going to cover how to specify connection options soon.
const redis = new Redis();

redis.set("mykey", "value"); // Returns a promise which resolves to "OK" when the command succeeds.

// ioredis supports the node.js callback style
redis.get("mykey", (err, result) => {
  if (err) {
    console.error(err);
  } else {
    console.log(result); // Prints "value"
  }
});

// Or ioredis returns a promise if the last argument isn't a function
redis.get("mykey").then((result) => {
  console.log(result); // Prints "value"
});

redis.zadd("sortedSet", 1, "one", 2, "dos", 4, "quatro", 3, "three");
redis.zrange("sortedSet", 0, 2, "WITHSCORES").then((elements) => {
  // ["one", "1", "dos", "2", "three", "3"] as if the command was `redis> ZRANGE sortedSet 0 2 WITHSCORES`
  console.log(elements);
});

// All arguments are passed directly to the redis server,
// so technically ioredis supports all Redis commands.
// The format is: redis[SOME_REDIS_COMMAND_IN_LOWERCASE](ARGUMENTS_ARE_JOINED_INTO_COMMAND_STRING)
// so the following statement is equivalent to the CLI: `redis> SET mykey hello EX 10`
redis.set("mykey", "hello", "EX", 10);

学习心得

通过这章学习对redis缓存有一定了解

课程截图

图片描述

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消