Redis - Pipelining

Redis là một máy chủ TCP và hỗ trợ giao thức yêu cầu / phản hồi. Trong Redis, một yêu cầu được thực hiện theo các bước sau:

  • Máy khách gửi một truy vấn đến máy chủ và đọc từ ổ cắm, thường là theo cách chặn, đối với phản hồi của máy chủ.

  • Máy chủ xử lý lệnh và gửi phản hồi trở lại máy khách.

Ý nghĩa của Pipelining

Ý nghĩa cơ bản của pipelining là, máy khách có thể gửi nhiều yêu cầu đến máy chủ mà không cần đợi trả lời và cuối cùng đọc các câu trả lời trong một bước duy nhất.

Thí dụ

Để kiểm tra đường dẫn Redis, chỉ cần khởi động phiên bản Redis và nhập lệnh sau vào terminal.

$(echo -en "PING\r\n SET tutorial redis\r\nGET tutorial\r\nINCR 
visitor\r\nINCR visitor\r\nINCR visitor\r\n"; sleep 10) | nc localhost 6379  
+PONG 
+OK 
redis 
:1 
:2 
:3

Trong ví dụ trên, chúng tôi sẽ kiểm tra kết nối Redis bằng cách sử dụng PINGchỉ huy. Chúng tôi đã đặt một chuỗi có têntutorial với giá trị redis. Sau đó, chúng tôi nhận được giá trị khóa đó và tăng số lượng khách truy cập lên ba lần. Kết quả là chúng ta có thể thấy rằng tất cả các lệnh được gửi đến Redis một lần và Redis cung cấp kết quả đầu ra của tất cả các lệnh trong một bước duy nhất.

Lợi ích của Pipelining

Lợi ích của kỹ thuật này là hiệu suất giao thức được cải thiện đáng kể. Tốc độ đạt được nhờ pipelining nằm trong khoảng từ hệ số năm đối với các kết nối đến máy chủ cục bộ cho đến hệ số ít nhất là một trăm đối với các kết nối internet chậm hơn.