去官网下载redis的压缩包,这里使用的是Redis Stack 7.4,Redis Stack 是 Redis 的增强版本,集成了多个高级功能模块(如全文搜索、JSON 存储、图数据库、时间序列等),提供“一站式”解决方案,简化复杂数据场景的开发。
tar -zxvf redis-stack-server-7.4.0-v1.rhel8.x86_64.tar.gzcd /root/redis-stack-server-7.4.0-v1/bin
#启动服务
./redis-stack-server
#以后台的方式启动
./redis-stack-server --daemonize yes
#通过配置文件启动
./redis-stack-server /root/redis-stack-server-7.4.0-v1/etc/redis-stack-service.confredis-cli -h 127.0.0.1 -p 6379 shutdown# 连接到指定的Redis实例
redis-cli -h 127.0.0.1 -p 6379
# 清除当前数据库
FLUSHDB
# 或者清除所有数据库
FLUSHALL
#查看key
keys *
#删除key 退出redis连接进行操作
redis-cli KEYS "wp_post:termids*" | xargs redis-cli DEL
#验证密码
auth 你的密码复制一份redis.conf配置文件。
修改端口号,每个实例监听不同的端口号。
修改pidfile,每个实例应该有自己的进程 ID 文件路径。
修改dir,数据持久化的目录,确保每个实例有自己独立的数据存储目录。
daemonize设置为 yes 可以让 Redis 在后台运行。
# 复制一份redis.conf
cp redis.conf redis1.conf
# 修改完成配置文件启动
redis-server redis1.conf#端口号
port 6379
#后台启动
daemonize yes
#保护模式,没有密码禁止外部访问
protected-mode yes
#绑定地址
bind 127.0.0.1
#配置密码保护
requirepass 你的密码
#调整内存限制
maxmemory <bytes>安装StackExchange.Redis包。
从mysql数据库中获取到redis的连接配置,进行redis服务注册,使用AddScoped注册服务,可支持多租户,参考代码如下:
//注册redis服务
services.AddScoped<IConnectionMultiplexer>(sp =>
{
try
{
OptionService optionService = sp.GetService<OptionService>();
OptionModel option = optionService.GetOptionByName(ConstContent.OPTION_REDIS_CONNECT);
if (option == null) return null;
if (option.autoload == "1")
{
RedisModel redisModel = JsonSerializer.Deserialize<RedisModel>(option.option_value);
if (redisModel != null)
{
string redisConnect = $"{redisModel.Ip}:{redisModel.Port},password={redisModel.Password}";
return ConnectionMultiplexer.Connect(redisConnect);
}
}
}
catch
{
return null;
}
return null;
});该代码是简单的实现,可进行优化,比如使用中间件,从连接池中获取db,提高效率。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。