簡體   English   中英

REST API設計-提取多個(1000)記錄

[英]REST API Design - Fetching multiple(1000) records

我有一個Web應用程序,必須使用REST API提取1000條記錄。 每條記錄約為500個字節。

以下是實現此目的的最佳方法是什么,為什么? 還有另一種更好的方法嗎?

1>一次獲取一個記錄。 並行觸發1000個呼叫。

2>以20為一組獲取。並行觸發50個調用。

3>以100為一組提取。並行觸發10個調用。

4>一起提取所有1000條記錄。

正如@Dima在評論中所說,這實際上取決於您要執行的操作。

記錄如何被使用?

  • 是要處理的程序還是要進行程序編程的后端程序? 如果是這樣,則取決於客戶收到后處理的難度。 他們需要很長時間來處理每條記錄嗎? 每條記錄1毫秒還是每條記錄100毫秒? 此選項完全取決於每個記錄可能的處理時間。

  • 有沒有前端供人類用戶使用? 如果是這樣,由於分頁結果之類的原因,批量請求將是很好的。 在這種情況下,我個人會選擇選項2或3。

但總的來說,根據記錄的數量,我建議考慮批量請求(通過觸發較少的調用)。 試探性地講,您可能會以這種方式獲得更好的整體網絡吞吐量。

如果您添加更多細節,我會很樂意更新我的答案,但是在那之前,一般將不得不做!

最適合什么情況? 您要優化什么?

我在類似的情況下做了一些測試,有效載荷(圖像)稍大,我的目標是在高延遲設置(跨大洲)上有效地利用網絡。

我的結果是,經過最少的並行處理(例如3-4個線程),網絡幾乎完全飽和。 我們將其與基於UDP的特定(專有)傳輸協議進行了比較,並且沒有可測量的差異。

無論如何,它可能不是您要查找的內容,但有時具有一個“啞” http端點就足夠了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM