- 使用 Spring Initializr 创建 Spring Boot 应用程序
- 在Spring Boot中配置Cassandra
- 在 Spring Boot 上配置 Tomcat 连接池
- 将Camel消息路由到嵌入WildFly的Artemis上
Redis(Remote Dictionary Server)远程词典服务器,是一个基于内存的键值对型 NoSQL 数据库。
特征:
以下将介绍如何在 Linux 系统上安装 Redis。
yum install -y gcc tcl
cd redis-6.2.7
make && make install
# Redis 提供的命令行客户端
redis-cli
# Redis 的服务端启动脚本
redis-server
# Redis 的哨兵启动脚本
redis-sentinel
Redis 有多种启动方式:
redis-server
redis-server redis.conf
修改 redis.conf 文件方式如下:
cp redis.conf redis.conf.bck
# 编辑配置文件
vi redis.conf
# 允许访问的地址默认是 127.0.0.1,会导致只能在本地访问。修改为 0.0.0.0 则可以在任意 IP 下访问。(生产环境不要设置为 0.0.0.0)
bind 0.0.0.0
# 守护进程,修改为 yes 后即可后台运行。
daemonize yes
# 密码,设置后访问 Redis 必须输入密码
requirepass 1234
# 监听的窗口
port 6379
# 工作目录,默认是当前目录.,也就是运行 redis-server 的命令、日志、持久化等文件会保存在这个目录。
dir .
# 数据库设置,设置为1代表只使用一个库,默认有16个库,编号 0-15
databases 1
# 设置 Redis 能够使用的最大内存
maxmemory 521mb
# 日志文件,默认为空,不记录日志。可以指定日志文件名
logfile "redis.log"
# 进入 Redis 安装目录
cd /usr/local/src/redis-6.2.7
# 启动 Redis
redis-server redis.conf
ps -ef | grep redis
编写开机自启系统服务文件:
vi /etc/systemd/system/redis.service
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-6.2.7/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
# 启动
systemctl start redis
# 停止
systemctl stop redis
# 重启
systemctl restart redis
# 查看状态
systemctl status redis
# 开启 Redis 自启
systemctl enable redis
Redis 停止服务命令如下:
# 未设置密码
redis-cli shutdown
# 设置了密码,需要通过 -u 来指定密码
redis-cli -u 密码 shutdown
实现数据的 CRUD,需要使用到 Redis 客户端,包括以下三种:
Redis 安装完成后就自带了命令好客户端:redis-cli,使用方式如下:
redis-cli [option] [commonds]
常见的 options 有:
-h IP地址
:指定要连接的 redis 节点的 IP 地址,默认是 127.0.0.1-p 端口号
:指定要连接的 redis 节点的端口号,默认是 6379-a 密码
:指定 redis 的访问密码其中的 commonds 就是 Redis 的操作命令,例如
ping
:与 redis 服务端做心跳测试,服务端正常会返回 PONG不指定 commonds 时,会进入 redis-cli 的交互控制台:
Redis 图形化桌面客户端安装包地址:https://github.com/lework/RedisDesktopManager-Windows/releases
安装好该程序并连接上 Redis 后,就能得到下面的显示。
我有一个关于 Redis Pubsub 的练习,如下所示: 如果发布者发布消息但订阅者没有收到服务器崩溃。订阅者如何在重启服务器时收到该消息? 请帮帮我,谢谢! 最佳答案 在这种情况下,消息将永远消失
我们正在使用 Service Stack 的 RedisClient 的 BlockingDequeue 来保存一些数据,直到它可以被处理。调用代码看起来像 using (var client =
我有一个 Redis 服务器和多个 Redis 客户端。每个 Redis 客户端都是一个 WebSocket+HTTP 服务器,其中包括管理 WebSocket 连接。这些 WebSocket+HTT
我有多个 Redis 实例。我使用不同的端口创建了一个集群。现在我想将数据从预先存在的 redis 实例传输到集群。我知道如何将数据从一个实例传输到集群,但是当实例多于一个时,我无法做到这一点。 最佳
配置:三个redis集群分区,跨三组一主一从。当 Master 宕机时,Lettuce 会立即检测到中断并开始重试。但是,Lettuce 没有检测到关联的 slave 已经将自己提升为 master
我想根据从指定集合中检索这些键来删除 Redis 键(及其数据集),例如: HMSET id:1 password 123 category milk HMSET id:2 password 456
我正在编写一个机器人(其中包含要禁用的命令列表),用于监视 Redis。它通过执行禁用命令,例如 (rename-command ZADD "")当我重新启动我的机器人时,如果要禁用的命令列表发生变化
我的任务是为大量听众使用发布/订阅。这是来自 docs 的订阅的简化示例: r = redis.StrictRedis(...) p = r.pubsub() p.subscribe('my-firs
我一直在阅读有关使用 Redis 哨兵进行故障转移的内容。我打算有1个master+1个slave,如果master宕机超过1分钟,就把slave变成master。我知道这在 Sentinel 中是
与仅使用常规 Redis 和创建分片相比,使用 Redis 集群有哪些优势? 在我看来,Redis Cluster 更注重数据安全(让主从架构解决故障)。 最佳答案 我认为当您需要在不丢失任何数据的情
由于 Redis 以被动和主动方式使 key 过期, 有没有办法得到一个 key ,即使它的过期时间已过 (但 在 Redis 中仍然存在 )? 最佳答案 DEBUG OBJECT myKey 将返回
我想用redis lua来实现monitor命令,而不是redis-cli monitor。但我不知道怎么办。 redis.call('monitor') 不起作用。 最佳答案 您不能从 Redis
我读过 https://github.com/redisson/redisson 我发现有几个 Redis 复制设置(包括对 AWS ElastiCache 和 Azure Redis 缓存的支持)
Microsoft.AspNet.SignalR.Redis 和 StackExchange.Redis.Extensions.Core 在同一个项目中使用。前者需要StackExchange.Red
1. 认识 Redis Redis(Remote Dictionary Server)远程词典服务器,是一个基于内存的键值对型 NoSQL 数据库。 特征: 键值(key-value)型,value
1. Redis 数据结构介绍 Redis 是一个 key-value 的数据库,key 一般是 String 类型,但 value 类型多种多样,下面就举了几个例子: value 类型 示例 Str
1. 什么是缓存 缓存(Cache) 就是数据交换的缓冲区,是存贮数据的临时地方,一般读写性能较高。 缓存的作用: 降低后端负载 提高读写效率,降低响应时间 缓存的成本: 数据一致性成本 代码维护成本
我有一份记录 list 。对于我的每条记录,我都需要进行一些繁重的计算,因为我要在Redis中创建反向索引。为了达到到达记录,需要在管道中执行多个redis命令(sadd为100 s + set为1
我有一个三节点Redis和3节点哨兵,一切正常,所有主服务器和从属服务器都经过验证,并且哨兵配置文件已与所有Redis和哨兵节点一起更新,但是问题是当Redis主服务器关闭并且哨兵希望选举失败者时再次
我正在尝试计算Redis中存储的消息之间的响应时间。但是我不知道该怎么做。 首先,我必须像这样存储chat_messages的时间流 ZADD conversation:CONVERSATION_ID
我是一名优秀的程序员,十分优秀!