Что влияет на время получения ответа от Get запроса?
в js кейc на вроде
x.dosmthPUT(some_data).done(function(data){x.dosmthGET(received_data).done(Yey!!!);}).fail(...)
Yey!!! - нужное нам событие
dosmth - ajax запросы соответственно, к REST сервису по одному и тому же Url
x - один и тот же объект
глубина вложенности N - опционально (у меня была 3)
при этом просто вызов x.dosmthGET(received_data).done(Yey!!!); - выполняется за 0 сек,
а вложенный кейс выполняется 10 сек , что наталкивает на мысль что дело в dereff ....
в базе на бекэнде все тоже выполняется по 0 сек,
в BLL в дебаге в вызываемом из сервиса Get методе со строки где return стоит и до получения ответа браузером - вот тут я наблюдаю задержку
0) не вложенный
Total
40.290 ms
Stalled
14.894 ms
DNS Lookup
0.106 ms
Initial connection
0.291 ms
Request sent
0.121 ms
Waiting (TTFB)
23.834 ms
Content Download
1) вложенный
Total
10.82 s - вот оно !!!!!!
Stalled
8.840 ms
Request sent
0.094 ms
Waiting (TTFB)
10.81 s
Content Download
0.395 ms
Explanation of resource timing
юзается jquery
происходит в любом браузере
что характерно профайлер хрома оценку времени выполнения запроса выдает сразу после отправки а отображение результатов уже приходиться ждать ровно столько сколько он выставил в оценке O_o
Почему smthGET запрос и получения нами Yey!!! события во вложенном случае идет с задержкой ?
PS. Сами методы отправки запросов
this.getComment = function (fullServiceUrl) {
return $.ajax({
async: true,
type: "get",
url: that.baseServiceUrl + fullServiceUrl,
cache: false
});
};
Чудес не бывает. Waiting (TTFB) 10.81 s означает, что браузер 10 секунд именно что ждал ответа от сервера.
Значит, проблема - на сервере. Вы напрасно ищите ее в джаваскрипте.
Приведите серверный код, без него ошибку не найти.
----
У меня только одна догадка: блокировка на каком-то ресурсе. Проверьте, корректно ли запрос updateComment завершает транзакцию или закрывает другие ресурсы.