哪一个是制作单个HTTP请求或多个小HTTP请求的最佳设计?
我正在创建一个角度应用程序,我需要显示个人数量的动物数量。哪一个是制作单个HTTP请求或多个小HTTP请求的最佳设计?
例如:基于
我的后端数据具有存储为喜欢
{ id: 1, name: "lion" },{ id: 2, name: "lion" },{ id: 3, name: "lion" },
{ id: 4, name: "tiger" }, { id: 5, name: "tiger" }, { id: 6, name: "wolf" }
然后我需要显示
3狮子动物 2老虎 1狼
我有/动物:GET返回所有动物的终点。
响应:
{
totalCount: 6,
animals: [
{ id: 1, name: "lion" },{ id: 2, name: "lion" },{ id: 3, name: "lion" },
{ id: 4, name: "tiger" }, { id: 5, name: "tiger" }, { id: 6, name: "wolf" }
]
}
关于该要求是一个更好的设计
- 制作一个单独的请求/动物:GET无需任何额外的PARAMS
- 发出请求/动物的多块? name = lion and/animals?name = tiger and/animals?name = wolf
最好向服务器发出一个请求,以便一次性提供所需的所有数据。一次呼叫会比多次呼叫更快。
一个很好的比喻是去商店。如果您不得不取回10件物品,最终携带相同数量的重量(即数据),无论您是去一次还是去10次,然而,10次涉及10次行程的努力。
这与服务器请求相同。您的客户端必须创建与服务器的连接,请求数据,服务器从池中获取连接,数据库必须查找要检索的数据的索引。如果你这样做了一次,那么所有这些事情都会作为一个单独的操作发生,而不是所有这些事情发生10次。
请你解释一下为什么单个请求比多个请求更好? – user3636922
我已添加更多信息。 –
那么它取决于你想要什么类型的数据和你想要的。单个请求总是比多个请求更好,因为如果您的应用程序扩展,您的服务器必须减少工作量,从而减少性能问题。
如果你想获取所有的动物做一个请求,但如果你想取3-4只动物比你可以创建多个请求或传递一个数组作为PARAM使单个请求
有很多的关于这个主题的信息,因为这不是框架特定的。你有没有搜索过? – Vega
重复的ID是否是错字? – DaSourcerer
是4是一个错字 – user3636922