Riak bucket对象是否可缓存?

2024-05-05 01:54:54 发布

您现在位置:Python中文网/ 问答频道 /正文

使用Basho的Python客户端时,获取键的值包括两个操作:

  • 拿个水桶
  • 从桶中获取值

像这样:

bucket = client.bucket(bucket_name)
value = bucket.get(key)

我偶尔也会为了同样的一个桶而得到None。这看起来很荒谬,因为bucket显然就在那里(我手动检查了客户端创建时使用的所有节点)。所以问题是,我可以/应该缓存/本地存储bucket对象吗?你知道吗


Tags: 对象keynameclientnone客户端get节点
1条回答
网友
1楼 · 发布于 2024-05-05 01:54:54

我不是python客户机的专家,但据我所知,您应该客户端.bucket实例并多次使用它对其执行操作。但是,如果缓存的意思是将其序列化到磁盘或存储在共享内存缓存中,我不会缓存它。实际上,我也会避免在多个线程之间共享它。而且绝对不会跨越不同的过程。你知道吗

获取一个bucket实例非常便宜,您可以经常创建它。但是,最好的做法是保持它并在紧循环中或在您尚未完成当前工作时对它执行多个操作。你知道吗

如果使用某些连接池,请确保在重新连接时重新创建bucket实例。你知道吗

希望有帮助。如果没有,给我们更多的细节,也许给我们一些代码:)

相关问题 更多 >