2012-01-13 71 views
0

我正在開發一個Android應用程序,該應用程序使用可能返回大量數據的Web服務。 Web服務也將由我的團隊構建,我們正在研究如何以最少的負載將數據傳輸到客戶端。我們已經研究過REST和SOAP,並且無法在兩者之間做出決定。 JSON會是一個很好的選擇嗎?在某些用例中,我們可能需要獲取大量數據。Android消費的Web服務的最輕量級數據方法

我們真的寧願不使用SOAP,如果可以避免的話。重點在於儘可能減少Android系統上需要完成的工作。

請問有人能幫助我們嗎?就技術範圍而言,只要我們保持在JAVA範圍內,我們就有充分的選擇自由。

在此先感謝。

編輯:不知道如何添加評論,所以我會在這裏做(我讀的常見問題,卻找不到必要的部分)

嗨,

讓我開始道歉對於我模糊的問題陳述,當我發佈查詢時,實際上我有點慌亂。無論如何,通過「大量數據」來回答你的問題,我的意思是將有大量請求(2-3,取決於用例)可能返回大量數據,例如,如果我使用實體名稱(完整或部分)進行搜索,則結果將僅爲文本數據,與以國家/地區爲搜索參數製作的搜索結果相比要少得多,在這種情況下,結果可能會返回數百單獨的結果。一個特定的搜索參數有可能返回幾千行數據。我們可以控制的是每行(可以這麼說)返回的數據量。目前,我們正試圖減少每行顯示的項目(我們試圖將它保持在5以下)。恐怕這是一個商業決策,所以如果我們堅持每行12個項目的現狀,我們也需要爲此做好準備。

+1

「我們已經研究過REST和JSON,並且無法在兩者之間做出決定」 - 這就像說「我們已經研究過掃雪機和橙子,並且無法在兩者之間做出決定」。 REST和JSON不能相互替代。 「用最少的負載」 - 負載的方面......什麼?帶寬?內存?中央處理器?閃存存儲?電池壽命?開發者時間? 「相當多的數據」 - 什麼樣的數據?圖片?關係風格的行和列的字符串和數字?電影?音頻剪輯? 「有人能幫我們嗎?」 - 首先更清楚地定義你正在返回的內容以及你的標準。 – CommonsWare 2012-01-13 18:24:49

回答

0

你剛纔說的是輪胎「我不能無鉛和15之間的決定」相當於」。

RESTful Web服務往往比肥皂更輕,但也有使用情況兼而有之。他們都是技術使用提供面向服務的體系結構爲了您的小描述,我會盡量使用其餘部分,儘管有更多的細節可能會出現肥皂的情況,您說的很多數據,但這是否意味着很多小的請求或幾個大的請求?寧靜的Web服務可能會返回多種數據格式,比如xml,yaml和json。Json的語法使得它比xml更輕,所以這可能是一個不錯的選擇。 Facebook的開放圖形api和drupal的服務模塊。

+0

好的,但是可以使用JSON傳輸的數據量有大小限制嗎?實際上,這是我的首要關注點:獲取大量數據,同時將機器人端處理降到最低。那麼,如果我要將大量數據作爲JSON發送,然後解析它,Google GSON是否不會導致顯着的處理開銷? – Debojit 2012-01-14 03:56:47

+0

@ user1148258 - 您的數據有多複雜?如果它是鍵值對,那麼可以使用比JSON更容易解析的東西,或者它是表格。如果它是結構化數據,無論如何,你都會有一些開銷處理它。 – Aerik 2012-01-18 21:32:03