能否拿到 redis 的数据指针

2022-07-05 12:12:31 +08:00
 faust24601

业务中需要拿到 redis 中的大量数据进行运算,如果取出来进行运算就会进行一次内存拷贝,这样效率就不如直接把数据放到内存中,但是想利用 redis 的持久化和可以和程序分离。有没有好的方案处理这种情况

1797 次点击
所在节点    程序员
6 条回复
liuhan907
2022-07-05 12:26:04 +08:00
写个 redis module 。
LeegoYih
2022-07-05 12:26:50 +08:00
OP 的意思是直接在 Redis 中进行数据运算吗?可以用 Lua 脚本实现,但是 Redis 执行命令是单线程的,可能会影响其他客户端访问的性能,不太推荐。
des
2022-07-05 12:35:30 +08:00
“需要拿到 redis 中的大量数据进行运算”
提醒一下,redis 是单线程执行的,会影响其他客户端性能,虽然用 lua 就能做
hearfish
2022-07-05 12:43:11 +08:00
Redis module, 效率比 lua 高多了
tutu2000
2022-07-05 14:43:34 +08:00
1.Redis7 的 function 功能,可以使用 lua 开发,但比 scripts 的维护更方便
2.更复杂的计算就推荐使用 module 了,可以在 module 中起单独的线程进行运算
3.Redis 的 script 一般用来简单的运算

老实说我没理解你的问题,为何内存拷贝会成为性能瓶颈点,使用 Redis 一般都是网络 IO 占大头
wellsc
2022-07-05 15:13:34 +08:00
内存嗖嗖的,线上有遇到瓶颈吗?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/864163

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX