RedisGears 1.2 发行说明

插件和 JVM 支持。Python async await 的 intent 语句。覆盖命令 API。在关键未命中事件上注册函数。跟踪新的统计信息。Python 分析器支持。扩展的 RedisAI 集成。

Redis 堆栈

要求

RedisGears v1.2.12 需要:

  • 最低 Redis 兼容版本(数据库):6.0.0
  • 最低 Redis 企业软件版本(集群):6.0.12

1.2.12(2024 年 12 月)

这是 RedisGears 1.2 的维护版本

更新紧急度:HIGH:存在可能影响用户子集的严重错误。升级!

  • 错误修复:
    • #1125同一个注册 ID 可能会生成两次。这可能会导致 RDB 损坏。
    • #1121在启动时重新创建虚拟环境。修复了虚拟环境可能指向旧版本的 Python 解释器的问题。
    • #1122在成功运行后清除最后一个错误,以避免在错误相关时产生混淆。
    • #1122在注销、暂停或注册阻塞错误后清除尚未开始的执行。(MOD-8184)

1.2.10(2024 年 10 月)

这是 RedisGears 1.2 的维护版本

更新紧急度:LOW:除非有新功能或修复,否则无需升级。

  • 错误修复:

    • #1114(仅限 REPLICAOF 和 Redis Enterprise A-A)跨槽冲突。避免使用RM_Call + SCAN命令,该命令可能会复制MULTI EXEC在 Lazy 过期时阻止
  • 笔记:

    • 不再支持 RHEL7

1.2.9(2024 年 3 月)

这是 RedisGears 1.2 的维护版本

更新紧急度:LOW:除非有新功能或修复,否则无需升级。

  • 特征:

    • #1087支持 RHEL9
    • 排名 #986添加了 execution mode 参数runfunction: 允许选择执行模式:sync/async/async_local- 与与 register 一起使用时相同
  • 错误修复:

    • 排名 #1097修复了由于键名称比较错误而导致的流读取器丢失通知(使用区分大小写进行比较)

1.2.7(2023 年 7 月)

这是 RedisGears 1.2 的维护版本

更新紧急度:LOW:除非有新功能或修复,否则无需升级。

1.2.6(2023 年 3 月)

这是 RedisGears 1.2 的维护版本。

更新紧急度:LOW:除非有新功能或修复,否则无需升级。

  • 特征:

    • #832#844 添加了 IPV6 支持
    • #841生成包含依赖项的项目
  • 错误修复:

    • 排名 #810修复在检查触发器是否已注册时无效的内存访问

v1.2.5(2022 年 7 月)

这是 RedisGears 1.2 的维护版本。

更新紧急度:MODERATE:对服务器进行升级编程,但这不是紧急的。

详:

  • 错误修复:

    • #792#798 关闭 trimping 时无限触发执行。
    • #791#796 即使在失败时,也停止在暂停期间触发执行。
    • #794#797 使用PythonInstallationDir配置以查找 Redis Enterprise 上的虚拟环境位置。(MOD-1734)

v1.2.4(2022 年 5 月)

这是 RedisGears 1.2 的维护版本。

更新紧急度:LOW:除非有您想要使用的新功能,否则无需升级。

详:

  • 改进:

    • #772添加了在运行时升级依赖项的功能FORCE_REQUIREMENTS_REINSTALLATIONRG.PYEXECUTE.
    • 排名 #765允许停用覆盖 Python 分配器以提高性能。
  • 错误修复:

    • #761#760#778 StreamReader修复了暂停和取消注册流处理的问题。

v1.2.3(2022 年 4 月)

这是 RedisGears 1.2 的维护版本。

更新紧急度:LOW:除非有您想要使用的新功能,否则无需升级。

详:

v1.2.2(2022 年 2 月)

这是 RedisGears 1.2 的正式发布版本。

标题

插件和 JVM 支持

RedisGears 1.2 带有一个新的插件机制,允许您决定要将哪些语言加载到 RedisGears 中。目前,我们支持两种语言:Python 和 Java(JVM 语言)。您可以使用新的Plugin配置。

有关 JVM 支持的完整文档,请参阅 Redis 文档网站

Python async await 支持

RedisGears 提供对 Python 协程的支持。gears 函数的每个步骤现在都可以是一个 Python 协程,它将执行置于后台或等待某些事件发生。有关更多信息,请参阅以下链接:

  • 异步 Await 支持
  • Async Await 高级主题

覆盖命令 API

您可以使用函数覆盖 Redis 原版命令。有关更多信息,请参阅 RedisGears 命令挂钩文档。

读取模式的键未命中事件

许多用户都要求 RedisGears 1.2 允许您在 key miss 事件上注册函数。其中一个用例是实现 read-through caching 模式。有关此主题的更多信息,请参阅以下链接:

  • RedisGears 文档中的 Key Miss 事件。
  • rghibernate 配方,该配方利用键 MISS 事件实现从外部数据库的读取。

更好的可见性和分析工具

我们通过实现更好的调试和故障排除来改善开发阶段的体验。虽然仍有改进的余地,但 RedisGears 1.2 迈出了朝着更简单、更易于使用的 API 迈出的第一步。此新版本允许您命名代码并使用单个 Redis 命令对其进行升级。有关更多信息,请参阅 RedisGears 介绍文档的升级部分。

RedisGears 现在跟踪以下新统计数据,以更好地分析您的注册:

  • lastRunDurationMS- 上次执行的持续时间(以毫秒为单位)
  • totalRunDurationMS- 所有执行的总运行时间(以毫秒为单位)
  • avgRunDurationMS- 平均执行运行时间(毫秒)

对于流,RedisGears 还会跟踪以下数据:

  • lastEstimatedLagMS- 给出最后一个批次滞后(流中的第一个批次条目与整个批次完成处理的时间之间的时间差)
  • avgEstimatedLagMS- 的平均值lastEstimatedLagMS田。

RG.DUMPREGISTRATIONS命令公开这些新的统计信息。

RedisGears 1.2 还增加了对 Python 分析器的支持,特别是cProfile.有关更多信息,请参阅以下命令的文档:

  • RG.PYPROFILE STATS
  • RG.PYPROFILE RESET

RedisAI 集成

尽管 RedisGears 1.0 版本已经支持 RedisAI 集成,但 RedisGears 1.2 增加了对 RedisAI v1.2 中所有功能的官方支持。该 API 经过扩展以支持 RedisAI DAG,并与新的异步等待 API 相结合,以实现最佳性能。

错误修复(自 1.0.9 起):

  • #557#554 RG.CONFIGGET返回用户定义的配置
  • 排名 #572创建 RedisAI DAG 时锁定 Redis GIL
  • 已添加 #661#536RG.TRIGGERONKEY
  • 排名 #650不传播MULTI EXEC在 Redis 7 上
  • #671#558 读取流数据时等待集群初始化
  • 排名 #656流读取器在流上创建多个执行
  • 排名 #676反序列化后未正确设置 Globals 字典
  • #665#679 允许在命令读取器上设置不区分大小写的事件类型
  • #697 hashtag()Redis Enterprise 的函数
  • #688#545 检查REDISMODULE_CTX_FLAGS_DENY_BLOCKINGflag 之前阻止客户端
注意:
  • 这是 1.2 的第一个 GA 版本。Redis 内部的语义版本控制版本为 1.2.2。由于 Redis 中模块的版本是数字,因此我们无法添加 GA 标志。

  • 最低 Redis 版本:6.0.0

为本页评分
返回顶部 ↑