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

Tại sao hiệu suất của Redis SET tốt hơn GET?

Thực ra đây chỉ là một hiệu ứng mà theo mặc định, bạn đo I / O nhiều hơn thời gian thực thi lệnh thực. Nếu bạn bắt đầu bật pipelining trong điểm chuẩn, nó sẽ là thước đo hiệu suất lệnh thực tế cao hơn một chút và các con số sẽ thay đổi:

$ redis-benchmark -q -n 1000000 -P 32 set foo bar
set foo bar: 338964.03
$ redis-benchmark -q -n 1000000 -P 32 get foo
get foo: 432713.09 requests per second

Bây giờ GET nhanh hơn :-)

Chúng tôi nên đưa pipelining vào trang tài liệu điểm chuẩn của mình.

CHỈNH SỬA: Điều này thậm chí còn rõ ràng hơn ở đây:

redis 127.0.0.1:6379> info commandstats
# Commandstats
cmdstat_get:calls=1001568,usec=221845,usec_per_call=0.22
cmdstat_set:calls=831104,usec=498235,usec_per_call=0.60

Lệnh này cung cấp thời gian cho CPU để phục vụ yêu cầu trong nội bộ, không tính đến I / O. SET xử lý chậm hơn ba lần.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Làm cách nào để đặt / lấy pandas.DataFrame đến / từ Redis?

  2. có cách nào để lấy IP máy khách trong redis không?

  3. Làm cách nào để sử dụng các cụm Node.js với ứng dụng Express đơn giản của tôi?

  4. Redis, Node.js và Socket.io:Xác thực máy chủ chéo và hiểu node.js

  5. Thử lại kết nối máy khách Node JS Redis