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

Cụm đa máy chủ Node.js:cách chia sẻ đối tượng trong một số cụm nút

Redis rất hay vì nó độc lập với ứng dụng nút của bạn và khá dễ mở rộng. Bạn cũng có thể sử dụng nó cho rất nhiều thứ bên ngoài pub / sub, chẳng hạn như chia sẻ cấu trúc dữ liệu cơ bản (băm, tập hợp đã sắp xếp, danh sách, chuỗi) giữa các máy chủ nút của bạn để giúp chúng đồng bộ hóa theo cách này. Về mặt lý thuyết, bạn có thể lưu tất cả các cuộc trò chuyện trong một phòng nhất định dưới dạng một tập hợp được sắp xếp trong đó khóa của bạn là đại diện json của đối tượng trò chuyện nào đó (chẳng hạn như {'user':'some_user','msg':'some_msg'} và điểm của bạn là dấu thời gian, vì vậy rất dễ dàng kéo các cuộc trò chuyện theo thời gian). Redis cực kỳ nhanh và cấu trúc dữ liệu của nó được tối ưu hóa cao, vì vậy một máy chủ duy nhất có thể xử lý rất nhiều người dùng.

Chúng tôi có một thiết lập tương tự trong quá trình sản xuất với một máy chủ Redis xử lý 1 triệu người dùng (chèn khoảng 10k lượt truy cập và 20k lượt đọc từ một tập hợp được sắp xếp mỗi phút) và mức sử dụng CPU hiếm khi vượt quá 5% trên một hộp không CPU nặng.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Làm thế nào để chạy một máy chủ Redis VÀ một ứng dụng khác bên trong Docker?

  2. Go JSON giải mã rất chậm. Cách tốt hơn để làm điều đó là gì?

  3. Redis Sentinel

  4. Đây có phải là một trường hợp sử dụng tốt cho Redis trên API ServiceStack REST không?

  5. Cách sử dụng Redis Sorted Lists