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

Redis, một chủ đề (pub / sub) có luôn được gửi đến ít nhất một người đăng ký không?

Pub / Sub là giao tiếp đồng bộ. Tất cả các bên cần phải hoạt động cùng một lúc để có thể giao tiếp. Đây Redis là một nhà môi giới nhắn tin đồng bộ thuần túy.

Câu trả lời cho ba câu hỏi đầu tiên của bạn là không. Không có sự tồn tại của các tin nhắn, không phải trong đĩa, không trong bộ nhớ. Khi một tin nhắn được xuất bản, nó sẽ được gửi đến các kết nối khách hàng đã đăng ký tại thời điểm này. Lệnh PUBLISH sẽ trả về số lượng khách hàng đã nhận được thông báo, ngay lập tức:O (N + M) trong đó N là số lượng khách hàng đã đăng ký kênh nhận và M là tổng số mẫu đã đăng ký (bởi bất kỳ ứng dụng khách nào).

... nhưng tôi nhận thấy rằng nếu tôi ngừng hoạt động và kết nối lại, tôi có thể nhận được các chủ đề được giao khi tôi trực tuyến trở lại

R / Tôi đoán nó phụ thuộc vào ý bạn muốn nói gì với " I am down ". Thư phải được lưu vào bộ nhớ đệm ở đâu đó trong khách hàng của bạn. Hoặc có thể kết nối máy khách trong Máy chủ Redis vẫn còn tồn tại và thông báo ở đó trong Bộ đệm đầu ra máy khách.

Bạn có thể thấy tài nguyên này hữu ích:

Sự khác biệt chính giữa Redis Pub / Sub và Redis Stream là gì?

Pub / Sub




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cấu trúc dữ liệu cơ bản được sử dụng cho Redis là gì?

  2. Redis:Tổng điểm trong Tập hợp đã sắp xếp

  3. Bursts of RedisTimeoutException sử dụng StackExchange.Redis

  4. Redis xuất bản-đăng ký:Redis có đảm bảo cung cấp thông điệp ngay cả khi bị căng thẳng lớn không?

  5. Nhận chỉ mục của một mục theo giá trị trong danh sách redis