一个另类的数据库-Redis

张开发
2026/5/30 16:11:22 15 分钟阅读
一个另类的数据库-Redis
今天小编来分享一下什么是Redis简介什么是 RedisRedisRemote 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 系统上下载并配置 RedisRedis的下载一般是用于Linux的服务器上所以接下来介绍下常见的Linux发行版下载RedisRedis 可在几乎所有主流 Linux 系统上运行包括但不限于Ubuntu / DebianCentOS / Rocky Linux / AlmaLinuxFedoraopenSUSE2.2 安装方式以 Ubuntu 和 CentOS 为例方法一通过包管理器安装推荐用于快速体验Ubuntu/Debiansudo 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。关键配置项包括配置项说明建议值生产环境bind绑定 IP 地址0.0.0.0允许远程访问或内网 IP更安全protected-mode保护模式no如果设置了密码或绑定了可信 IPport监听端口默认 6379可修改daemonize是否后台运行yesrequirepass设置访问密码强密码如 requirepass your_strong_passwordmaxmemory最大内存限制根据服务器资源设置如 2gbmaxmemory-policy内存淘汰策略allkeys-lru 或 volatile-lruappendonly是否开启 AOF 持久化yes更安全saveRDB 快照策略根据业务调整如 save 900 1 表示 900 秒内至少 1 次修改则保存示例最小安全配置/etc/redis/redis.confbind 0.0.0.0 protected-mode no port 6379 daemonize yes requirepass YourStrongPassword123! maxmemory 2gb maxmemory-policy allkeys-lru appendonly yes启动 Redisredis-server /etc/redis/redis.conf测试连接redis-cli -a YourStrongPassword123! 127.0.0.1:6379 ping PONG小贴士不要在公网暴露 Redis 无密码端口极易被攻击如数据清空、植入挖矿程序。使用防火墙如ufw或firewalld限制访问来源。定期备份 RDB/AOF 文件。监控内存使用和连接数。

更多文章