Без анализа сервера и его ресурсов трудно определить, почему серверу требуется слишком много времени для ответа.
Следует задуматься над тем, сколько времени происходит между последним выполнением JSON.попытка и в следующий раз вы делаете свою "первую попытку".Может быть, затем посмотреть, если вы воссоздаете его с помощью веб-браузера.
Является ли сервер качественным сервером?В противном случае это может быть «раскрутка» для ответа на первый запрос, который занимает слишком много времени для первого ответа.
Лично я написал общий класс фида JSON, в котором есть опция повторной попытки сбоя.Если он ничего не получает или недействителен JSON, он будет повторять x раз с интервалом в y секунд в зависимости от того, что вы передали.Сначала это требует немного больше работы, но окупится по двум причинам.
1) Его можно многократно использовать и обновлять, например, используя ASIHTTRequest, например, хорошее предложение от Terente, которое можно сделать в одном файле.
2) Несмотря на то, что вы не ожидаете сбоя ответа, может возникнуть медленная работа сервера или проблемы с сетью, что приведет к некорректному ответу.