Tôi đang xem tài liệu và tôi hơi bối rối về cách memcache cân bằng tải nội bộ nếu nhiều máy chủ được chỉ định. Ví dụ:Sử dụng nhiều máy chủ memcache trong một hồ bơi
import memcache
mc.set_servers(['127.0.0.1:11211','127.0.0.1:11212',])
mc.set("some_key", "Some value")
print mc.get("some_key")
Việc cài đặt và truy xuất khóa "some_key" có luôn xảy ra cùng một máy chủ không? Cài đặt và truy xuất các khóa thay thế, chẳng hạn như "some_key_2" hoặc "some_key_3", tự động được phân phối trong số các máy chủ có phải không? Điều gì sẽ xảy ra nếu một máy chủ được thêm vào hoặc bị xóa?
Tương tự như vậy, những gì xảy ra với get_multi:
import memcache
mc.set_servers(['127.0.0.1:11211','127.0.0.1:11212',])
mc.set_multi({42: 'adams', 46 : 'and of me'})
print mc.get_multi([46, 42])
Liệu điều này tự động thiết lập và lấy mỗi phím từ máy chủ phải không? Có cần phải viết một lớp bao bọc?
Cảm ơn.
Phải, vì vậy nó sẽ minh bạch làm điều này nếu có nhiều máy chủ trong hồ bơi? get_multi() sẽ tự động truy xuất các khóa bên phải từ các máy chủ phù hợp? – ensnare
Đó là những gì nó phải làm - thư viện memcached làm điều đó dưới bao gồm. Nếu nó không làm, thì có một lỗi ở đâu đó. –
Thật tuyệt ... Tôi không biết nó tự động làm điều này. Tôi nghĩ tôi phải viết một lớp bao bọc. Cảm ơn. – ensnare