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

Redis băm tốc độ ghi rất chậm

Bạn cần phải suy nghĩ thêm một chút về những gì bạn thực sự chuẩn khi sử dụng chương trình này. Tôi có thể nói với bạn rằng đó không phải là Redis, mà là khả năng hệ thống của bạn chạy một trò chơi bóng bàn giữa hai quá trình (vì tất cả các lệnh hsetnx của bạn đều đồng bộ).

Vui lòng đọc trang này trước khi thử đánh giá điểm chuẩn của Redis, nó chắc chắn sẽ giúp ích cho bạn.

Giả định của bạn rằng tốc độ của Redis sẽ tiếp cận với tốc độ ghi của RAM là hơi ngây thơ. Redis là một điều khiển từ xa cửa hàng, và đối với các hoạt động của O (1), phần lớn chi phí đầu vào là do chi phí liên lạc. Đối với lưu lượng truy cập đồng bộ (như ví dụ của bạn), đó cũng là do chi phí của bộ lập lịch hệ điều hành.

Nếu bạn muốn áp dụng nhiều lệnh theo trình tự, bạn cần sử dụng pipelining. Hoặc nếu bạn không quan tâm đến trình tự, bạn có thể làm việc đồng thời với một số kết nối (đây là chế độ mặc định cho redis-benchmark). Hoặc bạn có thể thử gửi các lệnh không đồng bộ để thay thế. Trong mọi trường hợp, ý tưởng là phân bổ chi phí của các chuyến xe vòng tới máy chủ Redis

Với việc kết nối trên một số kết nối có lưu lượng truy cập không đồng bộ, bạn sẽ nhận được thông lượng tối đa mà Redis có thể đạt được trên máy này.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Những trường hợp sử dụng nào mà Redis được ưu tiên hơn Aerospike?

  2. Sidekiq không tìm thấy bản ghi cho Rails Active Job

  3. Thực hiện lại hành vi với nhiều chương trình đồng thời thực hiện đọc / xóa trên cùng một khóa băm

  4. Laravel - Chạy công việc theo trình tự

  5. Đặt phiên mùa xuân trên máy chủ redis