Computer >> Máy Tính >  >> Lập trình >> Redis

Cách xóa và trả lại phần tử cuối cùng của danh sách - Redis RPOP | BRPOP

Trong hướng dẫn này, chúng ta sẽ tìm hiểu về cách xóa và trả về phần tử cuối cùng của giá trị danh sách được lưu trữ tại một khóa trong kho dữ liệu redis. Đối với điều này, chúng tôi sẽ sử dụng redis RPOP BRPOP lệnh.

Lệnh RPOP

Lệnh này được sử dụng để loại bỏ và trả về phần tử cuối cùng của giá trị danh sách được lưu trữ tại khóa được chỉ định. Nil được trả về, nếu khóa không tồn tại và trả về lỗi, nếu khóa tồn tại nhưng giá trị được lưu trữ tại khóa không thuộc kiểu dữ liệu danh sách. Cú pháp của lệnh Redis RPOP như sau:-

Cú pháp:-

 redis host:post> RPOP  

Đầu ra:-

Trả lời
 - (string), đại diện cho phần tử cuối cùng của danh sách. - (nil), nếu khóa không tồn tại. - Lỗi, nếu khóa tồn tại và giá trị được lưu trữ trong khóa không phải là danh sách. 

Ví dụ:-

Cách xóa và trả lại phần tử cuối cùng của danh sách - Redis RPOP | BRPOP

Lệnh BRPOP

Lệnh này là một phiên bản chặn của lệnh RPOP vì nó chặn hoạt động khi không có phần tử nào xuất hiện từ bất kỳ danh sách được chỉ định nào. Nói cách khác, nó chặn hoạt động khi tất cả các danh sách được chỉ định đều trống hoặc tất cả các khóa được chỉ định không tồn tại.

Nó loại bỏ và trả về phần tử cuối cùng của một giá trị danh sách không trống, với các khóa được chỉ định được kiểm tra từ trái sang phải. Vì vậy, ví dụ:nếu lệnh BRPOP list1 list2 list3 0 được thực thi, trong đó khóa list1 không tồn tại (coi như một danh sách trống), list2 là một danh sách trống và list3 chứa ba phần tử, sau đó nó xóa và trả về phần tử cuối cùng của giá trị danh sách được lưu trữ tại list3 vì nó là danh sách không trống đầu tiên, khi kiểm tra từ danh sách1 đến danh sách3.

Nếu khóa được chỉ định không tồn tại hoặc giá trị danh sách của khóa được chỉ định trống, BRPOP sẽ chặn hoạt động cho đến khi một ứng dụng khách khác thực thi lệnh như LPUSH, RPUSH và LINSERT để chèn một phần tử vào một trong các khóa được chỉ định. Khi một phần tử mới xuất hiện trên một trong các giá trị danh sách, ứng dụng khách sẽ trả về với tên của khóa mở khóa nó và giá trị được bật lên.

Khi BRPOP khiến ứng dụng khách bị chặn và thời gian chờ khác 0 được chỉ định, ứng dụng khách sẽ bỏ chặn giá trị nil trả về khi thời gian chờ được chỉ định đã hết mà không cần thực hiện thao tác chèn đối với ít nhất một trong các khóa được chỉ định.

Đối số thời gian chờ là một giá trị số nguyên đại diện cho số giây tối đa để chặn. Thời gian chờ 0 giây có thể được sử dụng để chặn vô thời hạn.

Cú pháp của lệnh Redis BRPOP như sau:-

Cú pháp:-

 redis host:post> BRPOP  []  

Đầu ra:-

Trả lời
 - (mảng), hai phần tử được trả về trong đó phần tử đầu tiên là tên của khóa phần tử được bật lên và phần tử thứ hai là chính phần tử được bật lên.- (nil), khi không có phần tử nào có thể được bật lên và hết thời gian chờ.  

Ví dụ:-

Cách xóa và trả lại phần tử cuối cùng của danh sách - Redis RPOP | BRPOP

Tài liệu tham khảo:-

  1. Tài liệu lệnh RPOP
  2. Tài liệu lệnh BRPOP

Đó là tất cả về cách xóa và trả về phần tử cuối cùng của giá trị danh sách được lưu trữ trong kho dữ liệu redis. Nếu bạn thích nó, hãy chia sẻ suy nghĩ của bạn trong phần bình luận và chia sẻ nó với những người khác.

<- Liệt kê các lệnh