Làm thế nào để lưu trữ một trang web trên nhiều máy chủ?


10

Tôi đang lên kế hoạch phát hành một ứng dụng iOS tải video từ máy chủ của tôi. Nếu hàng trăm người trong ngày ra mắt cố gắng làm điều này, thì trang web của tôi và các dịch vụ mà máy chủ của tôi cung cấp sẽ rõ ràng bị sập. Làm thế nào để bạn lưu trữ một trang web trên nhiều máy chủ? Khi ai đó cố gắng truy cập trang web của tôi, làm thế nào yêu cầu của họ được chuyển đến một máy chủ có sẵn? Làm thế nào để Apple và Google làm điều đó? Cảm ơn bạn đã giúp đỡ.



Kiểm tra câu trả lời của tôi, đây là một chương trình rất phổ biến để mở rộng và giám sát các máy chủ
Anagio

Câu trả lời:


5

Cũng như đối với các ông lớn (Google, Apple, v.v.) họ có phần cứng lưu lượng truy cập tinh vi và đắt tiền.

Một giải pháp đơn giản hơn là thiết lập nhiều máy chủ của bạn và có một máy chủ duy nhất xoay các yêu cầu.

Giả sử chúng tôi có 5 máy chủ để lưu trữ video, được đặt tên là VideohostN và chúng tôi có một máy chủ riêng biệt với các máy chủ theo dõi chúng đang được sử dụng tên Routinghost.

Ứng dụng khách iOS đầu tiên yêu cầu địa chỉ nhận video từ Routinghost. Routinghost trả về địa chỉ trên Videohost1.

Yêu cầu máy khách iOS thứ hai. Routinghost trả lời với Videohost2.

Vì vậy, cho đến khi nó đạt mức tối đa giả thuyết của chúng tôi, Videost5 và đặt lại thành Videnhost1.

Chỉ cần một số mã phía máy chủ đơn giản theo dõi Videohost nào sẽ sử dụng tiếp theo và trả lại địa chỉ cho nó.

Đó là một cách rẻ tiền và dễ dàng để truyền bá người dùng. Điều này không đảm bảo rằng bạn sẽ không khiến một số người dùng bị tắc trên bất kỳ Videohost nào. Đó là cơ hội ngẫu nhiên mà một số người dùng có kết nối chậm có thể cuối cùng kéo đến từ cùng một vị trí, nhưng đó là một sự khởi đầu.


1
Cảm ơn bạn đã giúp đỡ! Tôi đang sử dụng một dịch vụ có tên là Khu vực chỉnh sửa. Tôi đã thiết lập DNS cho toàn bộ trang web của mình với họ ngày hôm nay và họ cung cấp DNS vòng tròn (tôi tin đó là tên gọi của nó) cùng với "dịch vụ chuyển đổi dự phòng". Điều này giám sát các máy chủ mà DNS trỏ đến và gửi yêu cầu đến các máy chủ có sẵn và lấy ra những máy chủ được đóng gói với các yêu cầu. Đó là khoảng 12 đô la mỗi năm, vì vậy tôi sẽ chỉ gắn bó với họ thay vì tìm ra tất cả những điều này. Nhưng cảm ơn rất nhiều vì sự giúp đỡ của bạn!
Jack Humphries

Vâng, ở mức $ 12 / năm cho một giải pháp tốt hơn. Bạn có thể thả URL đến dịch vụ đó để tham khảo trong tương lai không?
Chris

2
Chắc chắn, zoneedit.com
Jack Humphries

7

Bạn có thể thực hiện cân bằng tải theo liên kết của @ PeeHaa đến bài viết của Wikipedia để biết thông tin ở đây . Điều này đòi hỏi một số bí quyết và tiền bạc và thời gian để thiết lập. Các công ty lớn như Google và Apple sử dụng công nghệ mà họ đã tự viết và cố gắng bắt chước họ là một giải pháp tốn kém và quá mức. Nếu bạn cân bằng tải, bạn sẽ muốn sử dụng một cái gì đó nhỏ hơn nhiều so với những gì họ làm.

Hoặc bạn có thể sử dụng máy chủ đám mây để lưu trữ video hoặc nội dung khác. Chúng được gọi là Mạng phân phối nội dung (CDNS) và chúng có thể làm được nhiều việc hơn là lưu trữ tệp đơn giản bây giờ. Lợi ích của các trang web này là họ sử dụng công nghệ như những gì Google đã tạo để tạo cân bằng tải và họ bán cho bạn dịch vụ dựa trên chính xác lượng dữ liệu hoặc chu kỳ bạn tiêu thụ trên máy chủ của họ. Điều này có nghĩa là chi phí của bạn sẽ tăng theo cùng tốc độ bạn sử dụng, miễn là bạn có mô hình doanh thu tốt, bạn sẽ luôn có tiền để trả cho dịch vụ. Một số công ty tuyệt vời cho người dùng nhỏ hơn là:

Họ là nhiều hơn ba. Ngoài ra, lợi ích khác của CDN là nội dung của bạn không nằm trên một máy chủ mà trên một mạng trên toàn cầu. Các CDN làm điều này để nội dung luôn đến từ máy chủ gần nhất với người dùng. Thiết lập hơn 2 máy chủ tại một địa điểm sẽ không bao giờ mang lại cho bạn những lợi ích về tốc độ phân phối giống như CDN có thể.

Đối với hồ sơ, tôi không làm việc cho bất kỳ công ty nào trong số này. Tôi đã sử dụng Dịch vụ web của Amazon để lưu trữ video trên trang web của công ty và nó mang lại lợi ích rất lớn.


1

Tôi sẽ sử dụng Scalr trên ec2 để tự động giám sát các máy chủ của bạn, đó là nguồn mở và hoạt động rất tốt với các dịch vụ AWS. Vì vậy, nếu máy chủ ứng dụng của bạn bắt đầu bị tấn công với quá nhiều lưu lượng, Scalr sẽ tự động đưa thêm máy chủ và cân bằng tải cho bạn. Nó cũng sẽ tự động sao lưu cơ sở dữ liệu của bạn nếu một người đi xuống làm nô lệ làm chủ. Vì vậy, các máy chủ ứng dụng và máy chủ cơ sở dữ liệu của bạn đều được theo dõi và thu nhỏ khi cần thiết.

Các trang web mở rộng là khó khăn và tốn kém. Sử dụng sức mạnh của Điện toán đám mây, Scalr tự động chia tỷ lệ cơ sở hạ tầng trang web của bạn: nó chia tỷ lệ cơ sở dữ liệu của bạn, chia tỷ lệ các máy chủ ứng dụng của bạn và thậm chí thêm và định cấu hình các máy chủ lưu trữ và cân bằng tải!

http://code.google.com.vn/p/scalr/


1

Một phần mềm cân bằng tải miễn phí như ZenLoader sẽ thực hiện thủ thuật này. Đây là một phần mềm nguồn mở, bạn chỉ trả tiền nếu bạn cần hỗ trợ.

Tôi nghe nói nó sẽ đáp ứng yêu cầu của bạn nếu bạn đã mua máy chủ.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.