一个另类的数据库-Redis
今天小编来分享一下什么是Redis
简介:
1.什么是 Redis?
Redis(Remote Dictionary Server) 是一个开源的、基于内存的高性能键值(Key-Value)数据库。它支持多种数据结构,如字符串(String)、哈希(Hash)、列表(List)、集合(Set)、有序集合(Sorted Set)等,因此被广泛应用于缓存、消息队列、会话存储、排行榜、实时分析等场景。
Redis 的核心特点包括:
内存存储:数据主要保存在内存中,读写速度极快(通常可达每秒数十万次操作)。
持久化支持:虽然基于内存,但 Redis 提供了 RDB(快照)和 AOF(追加日志)两种持久化机制,可以在重启后恢复数据。
丰富的数据类型:不仅支持简单的字符串,还支持复杂的数据结构,极大提升了开发灵活性。
高可用与分布式:通过主从复制、哨兵(Sentinel)和 Redis Cluster 实现高可用性和横向扩展。
原子性操作:所有 Redis 命令都是原子性的,支持事务(MULTI/EXEC)。
单线程模型(6.0 之前):早期版本使用单线程处理命令,避免了锁竞争;Redis 6.0 引入了多线程 I/O,提升网络吞吐能力,但命令执行仍为单线程。
在主流 Linux 系统上下载并配置 Redis
Redis的下载一般是用于Linux的服务器上,所以接下来介绍下,常见的Linux发行版下载Redis
Redis 可在几乎所有主流 Linux 系统上运行,包括但不限于:
Ubuntu / Debian
CentOS / Rocky Linux / AlmaLinux
Fedora
openSUSE
2.2 安装方式(以 Ubuntu 和 CentOS 为例)
方法一:通过包管理器安装(推荐用于快速体验)
Ubuntu/Debian:
sudo apt update
sudo apt install redis-serverCentOS/Rocky Linux(需启用 EPEL 仓库):
sudo dnf install epel-release -y
sudo dnf install redis -y注意:包管理器安装的 Redis 版本可能不是最新版,适合生产环境稳定需求,但若需新特性建议源码编译。
方法二:从源码编译安装(推荐用于生产或需要最新版本)
安装依赖
# Ubuntu/Debian
sudo apt update
sudo apt install build-essential tcl wget -y
# CentOS/Rocky
sudo dnf groupinstall "Development Tools" -y
sudo dnf install tcl wget -y下载 Redis 源码(以最新稳定版为例)
cd /tmp
wget https://download.redis.io/redis-stable.tar.gz
tar -xzf redis-stable.tar.gz
cd redis-stable编译并安装
make
sudo make install默认会将可执行文件(如
redis-server,redis-cli)安装到/usr/local/bin/。(可选)设置系统服务 Redis 源码包提供了 systemd 服务模板:
sudo cp utils/redis_init_script /etc/init.d/redis_6379
sudo mkdir /etc/redis
sudo cp redis.conf /etc/redis/6379.conf然后根据需要编辑配置文件并启动服务(详见下文配置部分)。
2.3 是否需要配置?如何配置?
是的,强烈建议进行基本配置,尤其是在生产环境中。
Redis 的主配置文件是 redis.conf。关键配置项包括:
示例:最小安全配置(/etc/redis/redis.conf)
bind 0.0.0.0
protected-mode no
port 6379
daemonize yes
requirepass YourStrongPassword123!
maxmemory 2gb
maxmemory-policy allkeys-lru
appendonly yes启动 Redis
redis-server /etc/redis/redis.conf测试连接
redis-cli -a YourStrongPassword123!
127.0.0.1:6379> ping
PONG小贴士
不要在公网暴露 Redis 无密码端口!极易被攻击(如数据清空、植入挖矿程序)。
使用防火墙(如
ufw或firewalld)限制访问来源。定期备份 RDB/AOF 文件。
监控内存使用和连接数。