在往zk中写入数据的时候,突然遇到

“kazoo.exceptions.ConnectionLoss“错误,然而对zk链接进行检查,在set之前状态是”CONNECT“。

经过测试后发现是因为写入的字节长度过长导致的。


def SetTest(self):
self.zk.ensure_path("/a/c")
self.zk.ensure_path("/a/d")
self.zk.set("/a/c", json.dumps([i for i in range(144957)]))
self.zk.set("/a/d", json.dumps([i for i in range(144958)]))

如上函数中,第一个set操作可以成功,但是第二个set操作则会报错。
原因就是第二个set操作,写入的字节数过长导致。

如果无法将字节数缩短,应该进行zlib压缩再写入。
再读取的时候,先进行解压缩,再解析文本内容。

相关文章:

  • 2021-10-11
  • 2021-08-07
  • 2022-12-23
  • 2022-01-21
  • 2021-04-01
  • 2021-06-01
  • 2021-11-09
猜你喜欢
  • 2021-10-13
  • 2022-12-23
  • 2021-12-17
  • 2021-07-24
  • 2021-10-01
  • 2021-06-01
  • 2022-12-23
相关资源
相似解决方案