Redis
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> Redis

Lưu trữ băm MessagePacked trong Redis

MessagePack giao dịch bằng byte thô, được đánh dấu là mã hóa 'ASCII-8BIT'. Tuy nhiên, dữ liệu đã đóng gói của bạn sẽ trở lại từ Redis được đánh dấu là ở mã hóa UTF-8. Để MessagePack giải nén thành công, bạn cần buộc nó trở lại được hiểu là các byte thô.

Do đó, hãy thay đổi dòng này ...

result = MessagePack.unpack(redis.get('my_key'))

đến một cái gì đó như thế này ...

redis_val = redis.get('my_key').force_encoding('ASCII-8BIT')
result = MessagePack.unpack(redis_val)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Nhiều phím trỏ đến một giá trị duy nhất trong Redis (Cache) với java

  2. đặt thời hạn cho các giá trị Hashmap trong Redis?

  3. Laravel - Xóa tất cả các khóa cache / redis có chứa một chuỗi cụ thể

  4. Sử dụng MongoDB làm cơ sở dữ liệu chính của chúng tôi, tôi có nên sử dụng cơ sở dữ liệu đồ thị riêng biệt để triển khai mối quan hệ giữa các thực thể không?

  5. Azure Redis Cache - Nhiều lỗi TimeoutException:Timeout thực hiện GET {key}