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

Lưu trữ các đối tượng javascript lồng nhau trong redis - NodeJS

Trước hết redis chỉ hỗ trợ các kiểu dữ liệu sau:

  1. Chuỗi
  2. Danh sách
  3. Đặt
  4. Băm
  5. Tập hợp đã sắp xếp

Bạn sẽ cần lưu trữ các đối tượng dưới dạng chuỗi trong cả redis và memcached.

node-memcached phân tích cú pháp / xâu chuỗi dữ liệu tự động. Nhưng node-redis không.

Tuy nhiên, bạn có thể triển khai các chức năng tuần tự hóa / giải mã hóa của riêng mình cho ứng dụng của mình.

Cách node-memcached xâu chuỗi một đối tượng như sau:

if (Buffer.isBuffer(value)) {
    flag = FLAG_BINARY;
    value = value.toString('binary');
} else if (valuetype === 'number') {
    flag = FLAG_NUMERIC;
    value = value.toString();
} else if (valuetype !== 'string') {
    flag = FLAG_JSON;
    value = JSON.stringify(value);
}

Nó cũng phân tích cú pháp văn bản được truy xuất theo cách này:

switch (flag) {
    case FLAG_JSON:
        dataSet = JSON.parse(dataSet);
        break;
    case FLAG_NUMERIC:
        dataSet = +dataSet;
        break;
    case FLAG_BINARY:
        tmp = new Buffer(dataSet.length);
        tmp.write(dataSet, 0, 'binary');
        dataSet = tmp;
        break;
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Tôi nên sử dụng cái gì? Phòng Socket.io hay Redis pub-sub?

  2. Giao tiếp thời gian thực giữa ứng dụng và trang web

  3. gradle xây dựng các công trình địa phương. Trong bộ chứa docker thì không. TẠI SAO?

  4. Cách tốt để sử dụng socket.io với cụm trong máy chủ đa lõi?

  5. Tên trường ID các thực thể ServiceStack