前言:
文章背景,最近项目中做了一个上传图片的功能,由于是流式上传,所以网关层没有对用户权限做过滤。需要自己手动做用户权限校验。但是,如果每次上传图片都进行数据库查询会造成数据库压力大。因此,看前人代码中,用到了redis缓存读取。学习记录之。
在项目中学习编程就是这样,当用到哪不会没见过的时候再学,就会觉得这个东西很有用,而且以后也能在这样的场景运用起来。
正文:
本文很基础,从零开始接入redis。redis是什么?只需记住是一个高性能的key-value数据库。代码提取点
一、redis安装:
mac通过brew命令安装redis:
brew install redis
安装完后,提示中会告诉安装位置在哪,例如我的mac默认安装在:/usr/local/bin/ ,ls命令查看如下
VBoxAutostart bsondump mongoimport pcre-config redis-server
VBoxBalloonCtrl dump.rdb mongoperf pcregrep vbox-img
VBoxDTrace flow mongoreplay pcretest vboxwebsrv
VBoxHeadless install_compass mongorestore react-native watchman
VBoxManage mongo mongos redis-benchmark watchman-make
VBoxVRDP mongod mongostat redis-check-aof watchman-wait
VirtualBox mongodump mongotop redis-check-rdb
apktool mongoexport node redis-cli
brew mongofiles npm redis-sentinel
1、启动redis服务端(类似mongodb):
1.1、不含配置文件的启动方式
sudo redis-server
1.2、含配置文件的启动方式(推荐采用此种方式,因为第一种方式启动后,通过spring连接,我本地提示需要用户名密码的错误)
sudo redis-server /usr/local/etc/redis.conf
启动成功会出现如下:
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 4.0.2 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 13264
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-'
13264:M 27 Feb 14:44:43.447 # Server initialized
13264:M 27 Feb 14:44:43.448 * DB loaded from disk: 0.000 seconds
13264:M 27 Feb 14:44:43.448 * Ready to accept connections