在使用redis作为核心数据库时,我的业务逻辑应该放在哪里?

好的,我想要构建一个基于从RSS中阅读的新闻进行建立的平台。我想要使用kafka将数据传入redis,并且其他服务也将使用redis中的这些数据。所以我正在思考我是否应该实现一个API来与我的redis数据库交互,这样我就不必将业务逻辑分散在通过请求访问redis的客户端之间,而是可以将核心业务逻辑存储在服务器内的REST API中。但是,我是否可以使用LUA脚本来避免在我的架构中再增加一个节点呢?我的意思是:不是通过实现一个API REST中的POST来实现在我的redis数据库中创建Feed,而是实现一个LUA脚本来完成这个任务。当我需要外部服务器来创建Feed时,我将直接调用这个LUA脚本。这样,我就能减少在我的数据库中进行更改所需的往返次数,但我不知道这样会不会在任何方面引起问题。

点赞
用户593425
用户593425

Lua脚本无法在Redis中设置为REST服务器,因为它无法走出沙箱并且无法后台运行。

您可能想要检查Redis模块RedisGears,因为它可以运行Python脚本,而且不受沙箱限制。

另一个您可能想要检查的模块是RedisRest

2021-02-22 06:59:16