暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

PikiwiDB (Pika) v3.5.6 - 稳定性与性能的完美结合

Pika开源社区 2025-09-09
49
尊敬的社区朋友及 PikiwiDB(Pika) 用户们:

我们非常高兴地宣布,PikiwiDB (Pika) v3.5.6版本已经正式发布!这是继v3.5.5 之后的重要更新,重点致力于优化性能、提升稳定性并修复了多个关键的 bug。Pika v3.5.6 无疑是目前最稳定且高效的版本,能够帮助各位用户在复杂的生产环境中实现卓越的性能表现。

版本连接:

https://github.com/OpenAtomFoundation/pikiwidb/releases/tag/v3.5.6

主要改进

1. 性能提升

  • 统计命令耗时
    我们增强了对 PikiwiDB 中命令处理的统计,特别是 Redis 缓存的读取/更新、写入 binlog 和存储处理的时间。通过全面的数据采集,可以更清晰地了解每个命令在不同阶段的耗时表现。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3036

  • 精简日志与监控信息
    为了提升系统的调试效率和运行可视化,我们简化了日志记录,并增加了更精细的耗时统计。同时,修改了暴露的监控信息,帮助运维人员更快速地发现潜在问题。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3044

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3119

  • 命令线程池优化
    对 Auth 命令进行了优化,将其纳入管理命令线程池中,避免主线程池因卡住而导致连接建立失败。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3048

  • 客户端连接优化
    当客户端关闭连接后,Pika 会跳过处理该客户端的请求,防止请求堵塞,提升整体系统响应能力。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3111

2. 关键 bug 修复

  • 修复缓存与数据库不一致
    在 Pika 中,针对一些特定的命令,如 Append 和部分 RedisCache 读接口,我们修复了它们在缓存和数据库中不一致的情况,避免了潜在的数据丢失问题。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3034

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3088

    修复 Rediscache 异步加载的问题。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3037

  • 解决主从切换问题
    我们修复了 Codis 主从切换不正确的问题,并确保当 Pika-slave 节点恢复后,Codis-dashboard 能正确更新元信息

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3048

  • 提升缓存性能
    修复了 RedisCache 最大存储范围不准确的问题,并增加了对字符串类型的 Key 最大缓存大小的配置选项。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3064

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3043

  • 修复 Telnet 连接崩溃问题
    在极端情况下,Pika 中的 Telnet 连接偶发性崩溃问题得到了修复,修复 getrange 和 setrange 多次执行偶发性导致 pika 崩溃的问题,确保连接更加稳定。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3099

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3106

  • 优化慢请求日志
    增强了对慢请求的日志记录功能,并加入了对 Pipeline 请求过多导致排队的耗时统计,帮助用户更好地监控和优化请求响应时间。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3142

  • 优化时间统计

    更新 Codis、Pika 和 Pika_exporter,修正版本时间记录方式,Pika 的构建时间改为使用 Make 编译时间并调整为 UTC 时间标准

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3049

  • Pipline 方式读取 bug 修复

    修复pipeline模式下管理命令分离的bug,没有优化读取性能。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3098

  • blob-cache 功能修复

    修复因为传参不准确导致 blockcache 功能不能使用的问题。

   https://github.com/OpenAtomFoundation/pikiwidb/pull/3105

3. 重要功能增强

  • 配置文件优化
    通过修改配置文件,用户可以精确控制 RedisCache 中元素的最大数量和大小,提升内存使用效率并避免缓存溢出问题。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3043

  • 修复 Zadd 和 SPOP Pika 返回值与 Redis 不一致的问题

    修复了多个命令在与客户端交互时返回值不一致的问题,尤其是在多次执行 Zadd 和 SPOP 时,确保与 Redis 行为一致。

https://github.com/OpenAtomFoundation/pikiwidb/pull/3108

https://github.com/OpenAtomFoundation/pikiwidb/pull/3129

  • 防止连接数上限问题
    针对因请求超时关闭连接导致的积累大量 close_wait
     状态连接问题,Pika 做了优化,防止达到连接数上限后阻止新连接的接收。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3089

  • 安全性保证

    修复 requirepass
     是非空的但可通过任意密码连接的问题。

    https://github.com/OpenAtomFoundation/pikiwidb/pull/3113

版本亮点

  • 提升性能:引入耗时统计、日志精简和管理命令线程池,显著提升了 Pika 在高并发和大量请求处理中的效率。

  • 关键 Bug 修复:解决了多项严重问题,包括数据不一致、超时问题、命令执行错误等,确保了 Pika 的稳定性和可靠性。

  • 更多配置选项:新增了对 RedisCache 存储配置和 RocksDB 参数的动态调整支持,为用户提供了更大的灵活性,能够根据业务需求进行定制化优化。

贡献者名单

Pika v3.5.6 的发布离不开所有社区成员的贡献,特别感谢以下贡献者对本次版本的支持与参与(按字母顺序排列):

  • wangshao1

  • Mixficsol

  • chenbt-hz

  • YuCai18

  • chejinge

感谢大家为 Pika 提供了持续的改进和支持!

总结

Pika v3.5.6 是当前最稳定的版本,修复了大量 bug,并引入了多项性能优化。通过这次版本更新,Pika 在高并发、高负载场景下的表现将更加优异,能够为您的生产环境提供更可靠、更高效的支持。我们鼓励您尽快升级至 v3.5.6,享受更稳定和更高效的体验!

感谢大家对 Pika 的支持与信任,未来我们将继续不断创新与完善,期待与您共同成长!

更多详情请访问官方发布页面

https://github.com/OpenAtomFoundation/pikiwidb


以上就是 Pika v3.5.6 的重要更新内容,我们相信这一版本将为用户带来更强大的功能和更高的稳定性!希望大家积极参与,继续为 Pika 的发展贡献力量。

社区

PikiwiDB (Pika) 开源社区热烈欢迎您的参与和支持。如果您有任何问题、意见或建议,可通过以下渠道联系我们:

文章转载自Pika开源社区,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论