Tóm lại
Nó phụ thuộc.
Giải thích
Bạn có thể kết nối với các nút Redis Cluster mà không cần gửi lệnh đến các nút khác. Bạn chỉ nên đảm bảo rằng bạn truy cập vào các khóa được xử lý bởi nút. Nếu bạn đang kết nối với nô lệ, hãy đảm bảo rằng kết nối của bạn ở READONLY
, nếu không, máy chủ sẽ phản hồi với MOVED
.
Có rất nhiều ứng dụng khách Redis dựa trên Java:
Mức thấp
- Jedis - API đồng bộ
- Xà lách - API không đồng bộ và đồng bộ hóa
- SRP
- JRedis
Cấp cao
- Spring Data Redis (sử dụng Jedis, Diếp cá và SRP làm trình điều khiển)
- Redisson
...và nhiều thứ khác nữa. Bạn có thể tìm thấy danh sách đầy đủ hơn về Khách hàng Java Redis tại http://redis.io/clients#java
Bạn nên chọn khách hàng nào?
Điều này phụ thuộc chủ yếu vào yêu cầu của bạn. Nếu bạn cần "chỉ là một khách hàng" cho những kết nối ngắn hạn, thì có lẽ Jedis là lựa chọn phù hợp cho bạn. Nếu bạn cần sự linh hoạt, phản hồi không đồng bộ và codec tùy chỉnh, thì rau diếp có thể là bạn của bạn.
Nếu bạn muốn xử lý Bộ sưu tập Java, Khóa và nhiều thứ khác, hãy xem Spring Data Redis hoặc Redisson.
Bạn nên sử dụng API nào?
Cũng phụ thuộc vào yêu cầu của bạn. Giao thức Redis có thể linh hoạt hơn giao thức memcached vì Redis hỗ trợ nhiều cấu trúc dữ liệu hơn.
HTH, Mark