🌱 Rudis 0.4.0 发布,一个高性能内存数据库

AI摘要
这是一个采用Rust语言实现的高性能键值存储系统项目。它复现了Redis的核心功能,兼容其命令与协议,支持多种数据结构,并提供了RDB与AOF持久化机制。项目持续更新,近期新增了多项数据结构命令,重构了有序集合的底层实现以提升性能,并修复了若干已知问题。这是一个技术性的开源项目介绍,属于【知识分享】。

项目介绍:

项目地址:github
Rudis 是一个采用 Rust 语言编写得高性能键值存储系统,旨在利用 Rust 语言的优势来重新复现 Rudis 的核心功能,以满足用户对高性能、可靠性和安全性的需求,同时保证与 Rudis API 的兼容。

  • 跨平台,兼容 windows、linux 系统架构。
  • 兼容 字符串、集合、哈希、列表、有序集合、HyperLogLog数据结构。
  • 提供 rdb 与 aof 机制以支持数据备份和恢复。
  • 拥有卓越的处理速度和即时响应能力。
  • 兼容 Rudis 的命令和协议规范。

更新日志

  • 新增 List 数据结构 Blpop、Brpop 命令。
  • 新增 Hash 数据结构 HSCAN 命令,支持 MATCH 和 COUNT 参数。
  • 新增 String 数据结构 SETEX、PSETEX、SETNX、SETBIT、GETBIT、BITCOUNT、BITOP 命令。
  • 新增 Set 数据结构 SRANDMEMBER、SDIFFSTORE、SINTERSTORE、SMOVE 命令。
  • 新增 HyperLogLog 数据结构及 PFADD、PFCOUNT、PFMERGE 命令。
  • 重构 SortedSet 底层实现,采用 HashMap + SkipList 架构提升性能,并支持 bincode 序列化。
  • 修复 SETEX/PSETEX 过期记录清理逻辑以及系统时间倒退导致的 RDB 调度 Panic 问题。
本作品采用《CC 协议》,转载必须注明作者和本文链接
刻意学习
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
未填写
文章
140
粉丝
112
喜欢
220
收藏
309
排名:302
访问:3.1 万
私信
所有博文
社区赞助商