gpt4 book ai didi

ruby-on-rails - 如何在 Redis 中命名和存储我的数据集?

转载 作者:IT王子 更新时间:2023-10-29 05:57:50 26 4
gpt4 key购买 nike

我不明白如何在 Redis 中创建持久存储。使用选项散列是我看到的唯一在路径中传递的地方,它似乎没有任何效果。

> r = Redis.new({:options => {:path => '~/redis_store'}})
=> #<Redis client v2.2.0 connected to redis://127.0.0.1:6379/0 (Redis v2.9.0)>
> r['foo']
=> "bar"
> s = Redis.new({:options => {:path => '~/redis_store2'}})
=> #<Redis client v2.2.0 connected to redis://127.0.0.1:6379/0 (Redis v2.9.0)>
> s['foo']
=> "bar"

最佳答案

Redis 已经是一个持久存储,你发现的 :path 选项是指定一个 unix 套接字来代替 TCP 连接(在 Redis 2.2 中支持)来与正在运行的 Redis 服务器通信), 而不是指定实际的数据库文件。

您是否尝试拥有独立的数据库,以便在设置 r['foo'] = 'bar' 时,s['foo']仍然返回 nil?

如果是这样,Redis 允许您连接到多个编号的数据库,默认为 #0(这就是 /0connected to redis://127.0.0.1:6379/0)。要选择不同的数据库:

r = Redis.new
=> #<Redis client v2.2.0 connected to redis://127.0.0.1:6379/0 (Redis v2.9.0)>
r['foo'] = 'bar'

s = Redis.new(:db => 1)
=> #<Redis client v2.2.0 connected to redis://127.0.0.1:6379/1 (Redis v2.9.0)>
s['foo']
# => nil

关于ruby-on-rails - 如何在 Redis 中命名和存储我的数据集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5890814/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com