我正在基於angularjs和rails的單頁應用程序。我使用RABL來呈現JSON文件。 很多JSON響應需要這樣的渲染JSON:嵌套的屬性或不同的請求?
child :tags do
attributes :id, :name
end
child webapp.comments do |t|
// with other nested attributs like user for comments...
extends "comments/index"
end
child webapp.category do |t|
attributes :id, :name
end
child webapp.user do |t|
extends 'users/show-lazy'
end
node(:image_url) { |webapp| webapp.image_url(:medium) }
我有一些性能問題,因爲由Rabl的渲染視圖花費大約800毫秒的嵌套屬性(一個用戶請求!)(活動記錄,只需50毫秒)。它太長了。我還沒有激活緩存。據在Github上https://github.com/nesquena/rabl/issues/49此相關的問題,嵌套的屬性可以減緩渲染...
我的問題:如果代嵌套屬性需要很長一段時間,是它更好地發送不同的要求,如: GET/myresource GET /評論/:id/myresource get/tags /:id/myresource
您的意見是?
答案將取決於很多事情......有多少延遲是網絡與服務器相關的,有多少數據,有多少控制你對API等等。我更喜歡當我分塊時可以在需要詳細信息之前向用戶顯示某些內容。 – Sharondio