2013-05-08 7 views
10

Bạn có nên sử dụng Parse.com thay vì MySQL cho một ứng dụng dựa trên PHP không? Nếu có, những thăng trầm và xu hướng đi xuống tuyến đường này là gì? MySQL làm việc như thế nào nếu bạn đang sử dụng phân tích cú pháp?Có đáng để thay thế MySQL bằng Parse.com khi sử dụng PHP không?

+6

Tôi chưa sử dụng Parse, nhưng tóm lại, dịch vụ của họ có vẻ là * máy chủ phụ trợ và logic ứng dụng cho những người không muốn lo lắng về máy chủ phụ trợ và logic ứng dụng. * I.e. nó chủ yếu dành cho các nhà phát triển di động (iOS, Android, v.v.) có ít kỹ năng phụ trợ hoặc tài nguyên nhưng cần * một số chương trình phụ trợ đơn giản * cho ứng dụng dành cho thiết bị di động của họ. Nếu bạn phù hợp với mô tả này, nó có thể là một dịch vụ tốt đẹp. Tôi sẽ không nghĩ về nó như là "thay thế MySQL". Ngoài ra, câu hỏi này không thực sự mang tính xây dựng. – deceze

Trả lời

15

Lợi ích chính của Parse là bạn có thể làm việc với các khái niệm cấp ứng dụng như tài khoản người dùng và thông báo đẩy thay vì khái niệm tập trung vào công nghệ như cơ sở dữ liệu và I/O socket. Sử dụng Parse giúp chia sẻ các mô hình gốc trên mã phía máy chủ và nhiều ứng dụng khách. Nếu bạn mong đợi bất kỳ số lượng phổ biến, quy mô và nhóm Ops của Parse sẽ giúp bạn tiết kiệm một số lượng lớn đau khổ.

Di chuyển từ PHP + MySQL sang phân tích cú pháp có thể không nhỏ, tuy nhiên, do đó, Parse có thể không có ý nghĩa đối với các dự án lớn đã đầu tư vào các công nghệ này. Phân tích cú pháp không cung cấp SDK PHP của bên thứ nhất, mặc dù có một SDK được liệt kê trong phần bên thứ ba của danh sách API Libraries. Giao diện cũng được tiếp xúc với REST. Thực tế, tuy nhiên, điều này là bởi vì PHP là một ngôn ngữ phía máy chủ và Parse nhằm mục đích để giảm bớt sự cần thiết phải mã hóa phía máy chủ. Bạn có thể xem xét sử dụng thư viện JavaScript của họ và xem những gì có thể thực hiện phía máy khách; nếu bạn thực sự cần thực thi phía máy chủ (ví dụ: để thực thi quyền toàn vẹn + cao), môi trường Cloud Code cũng chạy SDK JS.

Câu hỏi của bạn về tham gia có thành phần kỹ thuật và triết học. Về mặt kỹ thuật, việc lưu trữ một đối tượng Parse trong một đối tượng khác tương đương ngữ nghĩa với việc sử dụng khóa ngoài và các truy vấn có một tùy chọn "include" tương đương với hàm JOIN trong câu lệnh JOIN. Một Parse Relation là một bảng kết nối được lập chỉ mục mạnh mẽ phù hợp với các mối quan hệ nhiều-nhiều, mặc dù công cụ không cho phép bao gồm cả hai phía của phép nối vì nó được dự định sẽ được sử dụng với các bộ sưu tập có mức độ cao. Về mặt triết học, Parse là noSQL. Điều này có nghĩa là các lớp của bạn không cần phải được chuẩn hóa như các bảng SQL thường được kiến ​​trúc. Thiết kế các lớp học của bạn để đóng gói một ý tưởng và tin tưởng việc lập chỉ mục NoSQL để xử lý các truy vấn một cách hiệu quả.

+4

Tôi nghĩ bạn nên tiết lộ ở đây rằng bạn là nhà phát triển Parse.com. – duci9y

+3

Xin lỗi, nó đúng trên hồ sơ của tôi rằng tôi là một bộ đếm thời gian cũ Parse dev. Ngoài ra, kể từ khi trả lời câu hỏi này, chúng tôi đã phát hành PHP SDK bên thứ nhất, đây là dự án mã nguồn mở đầu tiên của chúng tôi. Hãy xem tại https://github.com/ParsePlatform/parse-php-sdk –

+0

@ThomasBouldin Điều gì sẽ xảy ra nếu chúng tôi muốn sử dụng cơ sở dữ liệu hiện có như MySQL với phân tích cú pháp. Tôi có nghĩa là Nếu đã có một trang web xây dựng bằng cách sử dụng MySQL như phụ trợ và nếu chúng ta muốn một ứng dụng như là một phần mở rộng cho trang web đó. Sau đó, chúng tôi sẽ sử dụng cơ sở dữ liệu hiện tại. Vậy làm thế nào chúng ta có thể làm điều đó? – mahendrakawde