Я разрабатываю и внедряю систему управления собственностью, и у меня есть панель инструментов, которая содержит заказы на номера для определенных интервалов дат.Параллельные запросы ajax или sql-запросы? [аспект производительности]
Что я прошу, связано с производительностью [информация о загрузочных комнатах]. В настоящее время у меня есть
for (var r = 0; r < rooms.length; r++)
{
$.ajax({
type: 'POST',
url: '/dashboard/getAllOrders.php',
data: 'room_id=' + encodeURIComponent(rooms[r].id),
complete: function (e, xhr, settings) {
if (e.status === 200)
{
var orders = $.parseJSON(e.responseText);
for (var i = 0; i < orders.length; i++)
{
drawOrder(orders[i]);
}
}
}
});
}
Но я тоже могу написать:
var room_ids = [];
for (var r = 0; r < rooms.length; r++)
{
room_ids.push(rooms[r].id);
}
$.ajax({
type: 'POST',
url: '/dashboard/getAllRoomsOrders.php',
data: { 'room_ids' : room_ids },
complete: function(event, request, settings)
{
if (event.status === 200)
{
var orders = $.parseJSON(event.responseText);
for (var i = 0; i < orders.length; i++)
{
drawOrder(orders[i]);
}
}
}
});
Не могли бы вы порекомендовать мне, какой вариант мне нужно придерживаться и предоставить аргументы, которые будут доказать, почему один вариант лучше, чем другие, с точки зрения производительности?
Если нет, не могли бы вы рекомендовать лучшие методы бенчмаркинга для клиент-серверных приложений?
Во-вторых, гораздо лучше, если вы сделаете правильную вещь и объедините ее в один запрос sql на заднем конце. меньше сетевого трафика, меньше отправленных запросов db и т. д., не уверен, что это даже вопрос. –
Глядя на это по-другому, Допустим, вам нужно молоко и хлеб из магазина. Что быстрее/эффективнее? Отправка одного человека в один автомобиль, чтобы получить оба сразу, или отправить двух человек в две разные машины, чтобы получить его? Разница будет небольшой, всего за 2 пункта, но у нее явно будут проблемы с пропускной способностью, если вам нужно 50 предметов. –
Я почти согласен с тобой. Но нам нужны 50 автомобилей, а не один, верно? Он будет потреблять больше памяти, которая должна быть выделена, а выделение памяти рядом с ней ест ресурсы, также требуется время для распределения, нет? в C++ динамическая память медленнее, чем автостатическая память. Хорошо, возможно, я постараюсь сделать некоторые тесты, чтобы узнать, какой вариант быстрее. –