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

Câu hỏi về Redis và Node.js và Socket.io

Vì vậy, mỗi "người dùng" nên có ứng dụng khách redis của riêng họ trong sự kiện kết nối. Tôi nói đúng chứ?

Trên thực tế, bạn không :)

Vấn đề là node.js rất không giống với PHP, chẳng hạn. node.js không tạo ra các quy trình con trên các kết nối mới, đó là một trong những lý do chính khiến nó có thể dễ dàng xử lý lượng lớn kết nối đồng thời, bao gồm cả các kết nối lâu đời (Comet, Websockets, v.v.). node.js xử lý các sự kiện một cách tuần tự bằng cách sử dụng một hàng đợi sự kiện trong một quy trình duy nhất. Nếu bạn muốn sử dụng một số quy trình để tận dụng các máy chủ đa lõi hoặc nhiều máy chủ, bạn sẽ phải thực hiện theo cách thủ công (mặc dù vậy, cách làm như vậy nằm ngoài phạm vi của câu hỏi này).

Do đó, việc sử dụng một kết nối Redis (hoặc MySQL) duy nhất để phục vụ một lượng lớn khách hàng là một chiến lược hoàn toàn hợp lệ. Điều này tránh được chi phí khởi tạo và chấm dứt kết nối cơ sở dữ liệu cho mỗi yêu cầu của khách hàng.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Không thể nhận kết quả từ Redis bằng Kho lưu trữ Crud trong Spring Boot?

  2. Làm cách nào để xóa những người lao động bị kẹt / cũ?

  3. 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?

  4. Đang cố gắng bắt đầu redis và xếp lại lịch trình trong một nhiệm vụ cào

  5. Nhận tất cả các trường và giá trị của khóa băm bằng cách sử dụng redis trong nút