2009-05-25 41 views
11
  1. Câu hỏi đầu tiên của tôi là, tôi thường đọc về những người sử dụng nhiều máy chủ chuyên dụng để chạy trang web của họ và xử lý truy vấn từ người dùng. Nhưng làm thế nào để họ chính xác làm điều này? Ý tôi là, khi tôi nhập tên miền, DNS sẽ phân giải bản đồ thành địa chỉ IP, nhưng tôi bị mất sau đó .. có một số kiến ​​trúc master/slave ở đó để tải các yêu cầu đến cân bằng giữa hàng trăm (tiềm năng) máy chủ?Làm thế nào để nhiều máy chủ hoạt động đồng bộ với ứng dụng web?

  2. Nếu đúng như vậy, làm thế nào để các máy chủ khác nhau, chia sẻ dữ liệu (cơ sở dữ liệu ví dụ)? Họ sẽ được kết nối với cùng một đĩa cứng?

Trả lời

5

ultramonkey sẽ cung cấp cho bạn một mô tả tốt về làm thế nào để cân bằng tải trên nhiều máy chủ, do đó bạn nhìn thấy 1 địa chỉ IP nhưng kết nối được chuyển đến một trong nhiều máy chủ (với khả năng chịu lỗi bao gồm).

Nếu bạn không có máy chủ web bằng cùng một bộ nhớ (lưu trữ chung có thể phức tạp, bạn phải sử dụng SAN với hệ thống tệp 'được chia sẻ' như GFS hoặc cơ sở dữ liệu), sau đó bạn nên bật sticky sessions bộ định tuyến mà mỗi khách hàng sẽ chọn một máy chủ để giao tiếp với lần đầu tiên và tiếp tục với máy chủ đó. Điều này ít bị lỗi hơn (nhưng trên web bạn sẽ phải làm mới một kết nối bị hỏng để bắt đầu lại) nhưng dễ dàng hơn nhiều cho kiến ​​trúc sư (và nhanh hơn vì mỗi máy chủ web có thể vẫn độc lập)

Vấn đề khác bạn ' d cần một tình huống chịu lỗi thực sự là xác định vị trí các máy chủ vật lý cách xa nhau, điều này làm tăng các vấn đề về hiệu suất cho hầu hết các thiết kế chia sẻ (nghĩa là bạn không thể đặt tất cả các máy chủ của mình trên SAN nếu chúng ở các quốc gia khác nhau), để sử dụng phương pháp tiếp cận nhiều máy chủ, sử dụng một tên DNS duy nhất và sao chép dữ liệu giữa chúng thường xuyên. DNS load balancing có thể là cách dễ nhất để sử dụng nhiều máy chủ web dưới dạng một trang web duy nhất. Trong những trường hợp này, DB thường có thể là một cơ sở dữ liệu duy nhất mà tất cả các máy chủ giao tiếp với, hoặc có thể được chia sẻ, sử dụng phân cụm hoặc thường xuyên đăng nhập để đảm bảo bạn có sẵn sàng sao lưu trực tuyến. . Đăng nhập-vận chuyển là phổ biến hơn cho các máy chủ sao lưu hơn là nằm ở xa.

Các vấn đề liên quan