{"repo":"lunar-landing/rudis","free":true,"listed":false,"github":"https://github.com/lunar-landing/rudis","clone":"git clone https://github.com/lunar-landing/rudis.git","description":"Rudis is a high-performance in memory database","language":"Rust","stars":434,"topics":["database","redis","rust"],"license":"GPL-3.0","category":"databases-storage","readme_excerpt":"ROADMAP 2026 Github Gitee Packages Docker 高 性 能 内 存 数 据 库 🔶 Explore the docs » 项目介绍 Rudis 是一个采用 Rust 语言编写得高性能键值存储系统，旨在利用 Rust 语言的优势来重新复现 Redis 的核心功能，以满足用户对高性能、可靠性和安全性的需求，同时保证与 Redis API 的兼容。 🌟 特性 - 跨平台，兼容 windows、linux、macos 系统。 - 兼容 字符串、集合、哈希、列表、有序集合、HyperLogLog、JSON数据结构。 - 提供 rdb 与 aof 机制以支持数据备份和恢复。 - 拥有卓越的处理速度和即时响应能力。 - 多个线程中并发创建和删除键值。 - 提供 Docker 部署方式。 - 兼容 RESP 协议规范。 快速入门 普通安装 根据系统环境要求，下载 匹配的 Rudis 版本 通过系统常规命令启动 Rudis 服务 容器安装 通过 docker 容器启动 Rudis 服务 如需更多安装命令，请前往 docker/README.md 查看 配置说明 - 配置文件 (config): 指定Rudis配置文件路径。 - 绑定的主机地址 (bind): 指定Rudis服务器绑定地址。 - 端口 (port): Rudis服务器监听端口，默认6379。 - 密码 (password): 设置Rudis访问密码。 - 数据库数量 (databases): Rudis数据库数量，默认16。 - 数据持久化目录 (dir): RDB和AOF文件存储目录，默认\"./\"。 - 持久化日志路径 (appendfilename): AOF日志文件存储路径。 - 开启持久化 (appendonly): 是否开启AOF持久化。 - 数据文件名 (dbfilename): RDB持久化文件名，默认\"dump.rdb\"。 - 会话上限 (maxclients): 最大客户端连接数，默认1000。 - 定时任务频率 (hz): 定时任务执行频率，默认10次/秒。 - RDB保存策略 (save): 设置RDB自动保存条件。 网络架构 项目结构 cmds Cmds 包是一个用 Rust 编写的模拟Rudis服务器的组件，主要负责实现Rudis协议的解析、数据库操作的执行以及相关结果的响应。该包内部包含了针对不同Rudis命令的实现，如SELECT、GET、SET等。其核心功能是根据Rudis协议规范，解析来自客户端的命令请求，并在模拟的Rudis数据库上执行相应的操作，再将结果返回给客户端。通过实现各个Rudis命令处理器，实现了对Rudis协议的完整支持，并提供了一个简单而有效的策略来处理不同类型的命令。 network Network 模块是 Rudis 的网络通信核心组件，负责处理客户端连接、会话管理和网络数据传输。该模块基于 Tokio 异步运行时构建，提供了高性能的 TCP 连接处理能力和并发连接支持。通过 Connection 封装了底层 TCP 流的读写操作，Session 管理客户端会话状态，SessionManager 提供线程安全的会话存储和检索，SessionRole 定义不同类型的客户端角色。整个模块采用了异步非阻塞的设计理念，能够有效处理大量并发连接，确保服务器在网络层面的高性能和稳定性。 persistence Persistence 模块提供了 AOF（Append-Only File）和 RDB（Rudis Dat","default_branch":null,"files":null,"tree":[],"storefront":"/r/lunar-landing","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/lunar-landing/rudis/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}