2012-03-03 21 views
27

Tôi muốn phát triển dự án mới của chúng tôi bằng cách sử dụng nhà cung cấp PaaS. Tôi sẽ phát triển chính trong PHP, nhưng muốn rằng dịch vụ có thể cung cấp các ngôn ngữ khác nữa (và các phần bổ sung có sẵn, như MongoDB, Memcached, redis, vv). Tôi có vẻ như một số PaaS như PHPfog (và AppFog), dotCloud, orchestra.io, OpenShift của Red Hat, Pagoda Box, trong số những người khác.Tìm kiếm các khuyến nghị của các nhà cung cấp PaaS

Trong số tất cả chúng, tôi nghĩ tôi thích hầu hết dotCloud. Nhưng muốn biết về bất kỳ đánh giá, đề xuất và so sánh nào giữa một số người chơi lớn trên PaaS.

Các bạn sẽ giới thiệu điều gì?

+1

giữa các nhà cung cấp PaaS đề cập, mà người ta có thể khuyên. Ngoài ra, bất kỳ ai có kinh nghiệm với bất kỳ ai trong số họ có thể đưa ra một số đánh giá/đề xuất/so sánh. – Guillermo

Trả lời

33

Đây là một loạt bài đăng trên blog mà tôi đã tổng hợp so sánh với hầu hết các nhà cung cấp dịch vụ PAAS hàng đầu. Hầu hết các thử nghiệm của tôi đã sử dụng python, vì vậy tôi không chắc họ so sánh với PHP như thế nào.

Hy vọng điều đó sẽ hữu ích.

PAAS So sánh:

OpenShift:

http://kencochrane.net/blog/2012/01/installing-django-application-on-openshift/

Stackato, được xây dựng trên đầu trang của CloudFoundry:

http://kencochrane.net/blog/2012/01/getting-djangocms-up-and-running-on-stackato/

Heroku:

http://kencochrane.net/blog/2011/11/developers-guide-for-running-django-apps-on-heroku/

dotCloud:

http://kencochrane.net/blog/2011/04/deploying-my-django-application-to-dotcloud/

khổng lồ google bảng tính với các chi tiết về tất cả các tính năng của PAAS:

https://docs.google.com/spreadsheet/ccc?key=0AiIXCd1D_TmGdFluZEJQakV5M0QwWXNWaXREcWR0Q0E#gid=0

6

bạn có thể tìm thấy một loạt các so sánh trên mạng:

Nếu bạn đang tìm kiếm PaaS nhiều thời gian, bạn có thể sẽ quan tâm đến PaaS như AppFog, Heroku, OpenShift, Google App Engine và CloudFoundry.com. Nếu bạn quan tâm đến PaaS dựa trên JVM, rất có thể bạn sẽ quan tâm đến PaaS như CloudBees hoặc Jelastic.

PaaS đa môi trường có xu hướng chung chung hơn nhưng mặt khác không giải quyết được một số vấn đề khó nhất mà mỗi ngôn ngữ/môi trường cụ thể có thể gặp phải. Ngoài ra, mỗi PaaS đều có phạm vi tính năng khác nhau.Ví dụ, CloudBees cũng cung cấp các công cụ cho giai đoạn phát triển (chẳng hạn như tích hợp liên tục dựa trên Jenkins).

Điều tốt nhất cần làm là kiểm tra 2-3 trong số đó và tự mình xem - điều này cũng rất nhiều về hương vị và màu sắc. Điều này không nên đưa bạn quá lâu. Và nếu có, hãy tiếp tục, có thể điều này có nghĩa đây không phải là PaaS phù hợp với bạn: PaaS đúng là nơi bạn nên cảm thấy ngay lập tức ở phía đông và rất hiệu quả.

+0

FYI OpenShift cũng có tích hợp Jenkins – TheSteve0

4

Tôi đang sử dụng gói bạc trên PhpFog, nhưng tôi nghĩ bạn có thể thử PagodaBox.com, họ có các tính năng tốt hơn: memcached và redis theo mặc định, ssh tunneling cho mysql và giao diện tuyệt vời!

pagodabox.com

+0

Đó là một giấc mơ làm việc với Pagoda Box trên một số ứng dụng trong vài tháng qua. Chúng hợp lý dễ dàng để có được ahold và mang lại nhiều hơn cho bảng giá so với tôi đã tìm thấy bất cứ nơi nào. –

+0

Tôi sẽ không sử dụng chúng, nền tảng của chúng quá không đáng tin cậy. – steve0nz

6

Cloudify (một mở PaaS Stack) hỗ trợ bất cứ lang trên bất kỳ đám mây - nó đi kèm với hỗ trợ dựng sẵn cho Mongo, MySQL, Solr, vv

8

Hãy suy nghĩ về những tính năng quan trọng đối bạn trong một PaaS. Bạn đề cập đến nhiều ngôn ngữ hỗ trợ, nhưng những gì khác. Hãy rõ ràng về những gì bạn thích về dotCloud để giúp tập trung vào đúng sản phẩm.

Một số tính năng chính mà tôi khuyên bạn nên tập trung vào là tính di động, ngăn xếp mở, tính sẵn sàng cao, độ đàn hồi, kiểm soát và giám sát.

Để ngăn chặn việc khóa, bạn muốn chọn PaaS giúp dễ dàng di chuyển giữa các đám mây. Hiểu cách mỗi sản phẩm tạo điều kiện cho khả năng thay đổi đám mây cung cấp theo nhu cầu của bạn hoặc môi trường phát triển.

Nhiều dịch vụ PaaS ra lệnh ngăn xếp có sẵn cho ứng dụng của bạn và điều này có thể làm giảm đáng kể các tùy chọn kiến ​​trúc của bạn. Bạn muốn có khả năng chọn ngôn ngữ, cơ sở dữ liệu, thành phần trung gian, phiên bản sản phẩm, v.v. đáp ứng nhu cầu của bạn. Một PaaS giới hạn các tùy chọn của bạn thành một trình đơn hẹp các thành phần không hữu ích cho việc triển khai trong thế giới thực.

Nếu thời gian hoạt động liên tục là quan trọng, thì PaaS sẽ giám sát tình trạng của ứng dụng và khôi phục từ thất bại như thế nào. Nó có thể phục hồi tự động. Nó có thể tự động mở rộng quy mô ứng dụng của bạn dựa trên tải, cung cấp tài nguyên mới trong thời gian cao điểm và phát hành các máy ảo đó khi không còn cần thiết nữa.

Ứng dụng của bạn có thể có sự phụ thuộc giữa các dịch vụ làm phức tạp triển khai. PaaS có thể dàn xếp và tự động quản lý các triển khai của bạn bất kể phụ thuộc và phức tạp của kiến ​​trúc của bạn hay không. Bạn muốn một PaaS linh hoạt, cởi mở và có thể mở rộng để có thể xử lý bất kỳ yêu cầu triển khai nào của bạn.

Cuối cùng, bạn muốn giám sát trong suốt ở cấp ứng dụng. Nó sẽ dễ dàng để xem sức khỏe của ứng dụng của bạn và nó hoạt động như thế nào theo thời gian. Nên có các trang tổng quan và nhật ký có sẵn để đơn giản hóa khắc phục sự cố ở cấp ứng dụng.

Dưới đây là một tóm tắt tuyệt vời của cảnh quan hiện tại: http://natishalom.typepad.com/nati_shaloms_blog/2012/05/mapping-the-cloudpaas-stack.html

Norm

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