REDIS có cơ chế tích hợp để sử dụng Slave khi Master bị hỏng không? Tôi có thể sử dụng IP ảo để trỏ đến máy chủ. Tôi có thể trỏ đến máy chủ phụ khi máy chủ không hoạt động không?
根据文档:
bầu nô lệ làm chủ bằng cách sử dụng lệnh SLAVEOF NO ONE và tắt chủ của bạn.
Nhưng làm thế nào để ứng dụng biết IP đã thay đổi?
mysql có tiện ích của bên thứ ba được gọi là MMM (sao chép tổng thể có màn hình). Có tiện ích như vậy cho REDIS không?
Bạn có thể sử dụng IP ảo trong bộ cân bằng tải, mặc dù đây không phải là tính năng tích hợp sẵn của Redis. Bất kỳ bộ cân bằng tải phần cứng hoặc phần mềm tốt nào cũng có thể thực hiện được việc này. Ví dụ: bạn có thể sử dụng "THĂNG BẰNG"hoặcHAProxyTrước VIP và sử dụng tập lệnh hoặc quy tắc để kiểm tra trạng thái của phiên bản Redis để xem phiên bản nào là chính và đặt nó làm mục tiêu trong bộ cân bằng tải (LB).
Đi theo lộ trình này sẽ yêu cầu một hoặc nhiều máy chủ bổ sung (hoặc VM, tùy thuộc vào thiết lập của bạn), nhưng nó sẽ cung cấp cho bạn một cấu hình trong đó khách hàng nói chuyện với một IP duy nhất và không biết họ cần nói chuyện với máy chủ nào với chương trình phụ trợ Hội thoại. Cách bạn cập nhật LB bạn nói chuyện với máy chủ nào tùy thuộc vào LB bạn đang sử dụng. May mắn thay, không ai trong số họ cần phải hiểu hoặc xử lý giao thức Redis; họ chỉ đang cân bằng một cổng.
Khi tôi đi theo con đường này, tôi đã chọn Slave-VIP và Master-VIP. Slave-VIP thực hiện cân bằng tải giữa tất cả các phiên bản Redis, trong khi Master-VIP chỉ kích hoạt phiên bản chính hiện tại. Nếu tải ghi của bạn rất nặng, bạn có thể xóa bản gốc hiện tại khỏi nhóm Slave-VIP. Nếu không, tôi sẽ để nó ở đó; điều này giúp loại bỏ nhu cầu cập nhật chuyển đổi dự phòng cho nhóm Slave-VIP.
Tôi là một lập trình viên xuất sắc, rất giỏi!