我在2014年1月寫了這篇文章。Parse.com正在迅速發展並擴展他們的平臺。我不能說這些信息將會持續多長時間,或者我的觀察將持續多長時間。
這就是說...
第一。 Parse.com通過交易數量收費。許多小型交易可能會導致應用程序所有者的成本更高。我們正在使用Parse.com的專業計劃。臨計劃有這些限制:每月
- 15000000 HTTP請求每40個請求
- 突發限制第二
如果你有4500個用戶,每個發送125個HTTP請求Parse.com每天,那麼你已經在每30天查看16,850,000個請求。 Parse.com還提供稱爲Parse Enterprise的更高級別的服務。有關此計劃的詳細信息未發佈。
其次,Parse.com的預期目的是成爲移動應用的輕量級後端後端。我相信Parse.com是一個非常好的移動後端即服務(MBaaS - 鏈接到關於此主題的Forrester文章)。
我正在使用Parse.com構建服務器端應用程序。我使用REST界面,雲功能和雲作業。在我看來,Parse.com是一個笨拙的應用服務器。它不公開強大的工具來操縱數據。例如,刪除表的唯一方法是單擊Parse的Web數據瀏覽器中的按鈕。另一個例子是Parse在第一次保存對象時設置了一個屬性的類型。如果數據類型在對象中發生變化,例如從字符串到指針,Parse.com將拒絕保存該對象。
雲功能編程模型建立在Node.js上。複雜的業務邏輯將迅速將您置於回調地獄中,因爲所有數據庫查詢和保存操作都是異步的。也就是說,當你保存或查詢一個對象時,你可以手動解析一個函數並且說「保存/查詢完成時,運行這個函數」。這對LISP程序員來說可能很自然,但對於在Java或.Net上提出的OO程序員而言則不然。如果您打算爲您的應用程序編寫Cloud Code,請注意這一點。當我開始編寫雲端函數時,我的生產力大打折扣。
我在Parse.com遇到的最大挑戰是往返時間。這裏有一些非正式的基準測試:
通過REST API獲取一個對象已經相當一致的RTT的800ms的
ICMP被阻塞,但敲門時間需要400-800毫秒,具體取決於一天。
Parse.com處於Northern Virginia Amazon的數據中心。我用Ookla的Speedtest來估計我的延遲。在Ashburn訪問里士滿商務中心服務器(75.103.15.244)時,我的ping時間爲95ms。 D.C.中的一臺服務器給了我97ms的ping時間。 200毫秒的互聯網開銷不是問題。
雲功能執行的查詢或保存操作越多,響應時間就越長。具有一個或兩個查詢或保存操作的雲功能具有1到3秒的RTT。具有多個查詢和保存操作的雲功能的RTT在3到10秒之間。
15秒後發送給Parse.com的HTTP請求超時。我有一個用於測試的雲功能,用於刪除數據庫中的所有對象。這個雲功能可以在超時之前刪除幾百行。我將雲端功能轉換爲雲端作業,因爲作業最多可以運行15分鐘。作業刪除400-500個對象,需要30-60秒才能完成。作業狀態只能通過Web瀏覽器獲得。我必須創建一個輕量級的工作狀態系統,以便其他開發人員可以查詢他們的工作狀態。
解析的最佳使用案例是iPhone開發人員編寫的一款遊戲,需要存儲用戶的高分,但對服務器一無所知。使用分析功能強大的地方。
難道你不能試試看看它是如何執行許多併發請求? – Brennan