【阿里云tair】tair项目间共享对象和过长字符串(包含解决方法)

tair存入对象不能成功的原因和缓存一样,是序列化的问题,目前最麻烦的是路径名,也就是包名很有可能不相同,这个目前就没法解决了。

解决方法:转换成字符串的格式进行存储。

 

过长字符这个问题,是从上面延伸而来的,因为我们把对象转换成字符串了,但是由于对象可能会很大,所以字符串非常长。按理来说tair是推荐存储100k以内的数据,但是我存储6k的数据的时候就出现了严重的问题:实际上没存进去,但是返回给我保存成功。这非常坑爹,因为我们只能用存完立刻拿出来的方法看是否拿得出来,来判断是否保存成功了,因为接口是不会给你报错的。

解决方法:先在字符串的结尾追加结束符号,把字符串拆解成大小为1000的子字符串挨个保存。保存的key设为key+"#"+i,i从0递增,每个存小于等于1000的子字符串,直到保存完。在另一个工程取对象的时候,用key+"#"+i,i从0递增, 直到取到结束符号,把结束符号拿掉,转换成我们需要的对象。

 

剩余问题:现在没有明确的文档确认tair的value能存多少大小的字符串,还需要明确一下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值