快速入门:使用 Redis Insight

开始使用 Redis Insight 中的触发器和函数

Redis 开源 Redis Enterprise Software Redis Cloud Redis 开源 Redis Enterprise for Kubernetes 客户端

确保您已安装了 Redis Stack 并正在运行。 或者,您可以创建一个免费的 Redis Cloud 帐户

如果您尚未安装 Redis Insight,可以在此下载最新版本。 如果您是第一次使用 Redis Insight,建议您在继续阅读本指南之前,先阅读Redis Insight 指南

连接到 Redis Stack

打开 Redis Insight 应用程序,然后单击其数据库别名以连接到您的数据库。

加载库

单击触发器和函数图标,然后单击+ 库,如下所示。

将您的代码添加到右侧面板的库代码部分,然后单击添加库

添加库后,您将看到以下内容

TFCALL 命令用于执行 JavaScript 函数。 如果命令失败,将返回错误。 单击左下角的>_ CLI按钮以打开控制台窗口,然后运行以下命令。

要更新库,您可以单击编辑(铅笔)图标直接在界面中编辑库代码。 当您保存更改时,将重新加载库。

上传外部文件

像之前一样单击+ 添加库按钮,然后单击上传按钮,而不是将代码直接添加到编辑器中,从文件浏览器中选择文件,然后单击添加库。 该文件需要包含标头,其中包含引擎标识符、API 版本和库名称:#!js api_version=1.0 name=myFirstLibrary

创建触发器

Redis 中的函数可以使用键空间触发器来响应事件。 虽然这些事件中的大多数是由命令调用启动的,但它们也包括在键过期或从数据库中删除时发生的事件。

有关支持的事件的完整列表,请参阅Redis 键空间通知页面

以下代码创建一个新的键空间触发器,该触发器将新字段添加到具有最新更新时间的新建或更新的哈希。

#!js name=myFirstLibrary api_version=1.0

function addLastUpdatedField(client, data) {
    if(data.event == 'hset') {
        var currentDateTime = Date.now();
        client.call('hset', data.key, 'last_updated', currentDateTime.toString());
    }
} 

// Register the KeySpaceTrigger 'AddLastUpdated' for keys with the prefix 'fellowship'
// with the callback function 'addLastUpdatedField'.
redis.registerKeySpaceTrigger('addLastUpdated', 'fellowship:', addLastUpdatedField);"

像之前一样更新现有库,然后使用 Redis Insight 控制台,添加具有所需前缀的新哈希以触发该函数。

> HSET fellowship:1 name "Frodo Baggins" title "The One Ring Bearer"

运行 HGETALL 命令以检查是否已将上次更新时间添加到示例中。

> HGETALL fellowship:1
1) "name"
2) "Frodo Baggins"
3) "title"
4) "The One Ring Bearer"
5) "last_updated"
6) "1693238681822"
为此页面评分
返回顶部 ↑