Khi chọn một kiến trúc cho một dịch vụ phụ thuộc rất nhiều vào kiến trúc 'cổ điển' như bản đồ web không bao giờ đánh giá thấp hiệu quả của các giải pháp lưu trữ truyền thống hơn như RackSpace Cloud Servers hoặc Linode .
Bạn sẽ có ít lựa chọn hơn để thực hiện (như sử dụng S3 hay không, tải cân bằng hay không, sao lưu, v.v. hay không và chi phí sẽ là bao nhiêu?) Mà kết quả rất khó dự đoán VÀ, quan trọng hơn là bạn sẽ có thể sử dụng các công cụ mà bạn đã quen thuộc.
Đã từng trải qua chính tôi một thời gian trước đây tôi có thể nói với bạn rằng các yếu tố quan trọng trong quyết định của tôi để lưu trữ một dịch vụ bản đồ web trên Rackspace chứ không phải AWS là:
- Cloud Server có khả năng phục hồi (nhiều hơn) so với phiên bản EC2. Các trường hợp EC2 thực sự được dự kiến sẽ thất bại và chúng sẽ thất bại
- Khối lượng EBS cũng thất bại (có rất nhiều câu chuyện buồn trong tin tức) và nói chung có I / O kém
- trừ khi bạn chọn các trường hợp I / O lớn hơn có thể là một vấn đề (đặc biệt nếu bạn có kế hoạch gieo hạt trên EC2, thay vì sao chép chúng). Nó cũng có thể là một vấn đề với cơ sở dữ liệu MTBtiles
- Bất cứ khi nào bạn khởi động lại máy chủ, ip công cộng sẽ thay đổi: điều này không xảy ra trên Linode hoặc Rackspace
- Bạn sẽ phải tự mình đưa ra một chiến lược sao lưu và khôi phục trong khi cả Linode và Rackspace đều cung cấp điểm và nhấp vào ảnh chụp nhanh tự động hàng ngày và hàng tuần và khôi phục
- Nếu máy chủ chạy VPS của bạn không thành công, Rackspace sẽ đảm nhiệm việc di chuyển cá thể của bạn và khởi động lại nó trên một máy chủ khác và họ sẽ thực hiện việc này trong 4h (đó là SLA của họ). Nó xảy ra với tôi khi tôi đang đi nghỉ: cảm thấy rất chuyên nghiệp. Linode nên làm như vậy
- Linode có SLA khả dụng lớn: 99,9% và họ yêu cầu hiệu suất tuyệt vời vì họ không cung cấp quá nhiều
- Rackspace gần đây đã đưa ra một chiến lược âm lượng như EBS để không gian đĩa không còn là vấn đề nữa. Trước đây nếu bạn cần nhiều dung lượng ổ đĩa, bạn phải lấy một thể hiện lớn trong khi trên EC2, bạn có thể cung cấp bộ nhớ, cpu và bộ nhớ với sự kiểm soát tốt hơn
Với điều này, tôi không nói rằng Amazon AWS kém hơn những người khác, tôi chỉ nói rằng đôi khi các giải pháp lưu trữ truyền thống có thể mở rộng cũng như các giải pháp dựa trên Đám mây. Một ví dụ đáng chú ý là mạng StackExchange .
Vì vậy, trong trường hợp của bạn, tôi sẽ khởi động một thể hiện lớn trên Rackspace và sau đó tải tất cả dữ liệu trong một cá thể Postgis cục bộ. Sau đó, sau khi cấu hình công cụ kết xuất, tôi sẽ chọn bộ đệm. Một ví dụ lớn sẽ hoàn thành quá trình gieo đủ nhanh để nó không trở nên quá đắt để chạy. Bạn có thể lưu trữ các ô trong fs, MTBtiles, thậm chí trên S3 (btw, bạn có thể cung cấp dữ liệu S3 trên CDN bằng CloudFront ).
Sau khi quá trình gieo hạt hoàn thành, tôi sẽ khởi động lại máy chủ và thay đổi kích thước của nó thành một thể hiện nhỏ (thậm chí là 512 MB) vì tại thời điểm đó, nó sẽ chỉ phải cung cấp dữ liệu tĩnh.
Đây là một câu trả lời dài nên tôi sẽ dừng ở đây. Nếu bạn muốn tôi giải thích về các khía cạnh nhất định, chỉ cần thả một nhận xét.
Tuyên bố miễn trừ trách nhiệm: Tôi không liên kết với Rackspace, Linode hoặc bất kỳ nhà cung cấp nào khác mà tôi đã trích dẫn.