Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Долгоиграющий запрос. / 25 сообщений из 31, страница 1 из 2
12.02.2015, 19:02
    #38878483
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
Есть серверная задача которая может обрабатываться несколько минут. Надо чтобы юзер мог запустить эту задачу и дождался ответа в виде присылаемого файла.
Проблема в том, что браузер не может дождаться пока серевер досчитает задачу до конца и отваливается с таймаутом.

Нужны идеи как это решить.
...
Рейтинг: 0 / 0
12.02.2015, 19:33
    #38878503
carrotik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
White Owl,

... один из вариантов: браузер отправляет запрос, и не ждет ответа, а просто включает джаваскриптовый таймер, например .. а сервер не отдает файл в респонс, а сохраняет у себя в папке, примапленной к веб-приложению ... клиент по таймеру обращается за файлом, если его нет - "Позвоните через 2 минуты" ... примерно так ..
...
Рейтинг: 0 / 0
12.02.2015, 19:59
    #38878520
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
Временные файлы делать можно, но очень не хочется.
Это конечно почти беспроигрышный вариант, но...
...
Рейтинг: 0 / 0
12.02.2015, 20:02
    #38878524
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
Еще бродит идея чтобы серевер отсылал готовый файл на почту юзеру. Но... как-то не лежит к этому душа.
...
Рейтинг: 0 / 0
12.02.2015, 20:30
    #38878531
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
отваливается по таймауту как правило сервер, а не браузер.
...
Рейтинг: 0 / 0
12.02.2015, 21:24
    #38878559
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
White Owl,

на сервере - запуситить JOB (любым приемлемым способом), параметры джоба вернуть в куку,

бровзер неспешно запрашивает аякс- запросами статус джоба
...
Рейтинг: 0 / 0
12.02.2015, 22:03
    #38878571
mini.weblab
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
вдруг поможет :)
Sometimes the hardest thing to get a script to do is to do nothing at all—
for a specific amount of time. Fortunately, JavaScript includes a built-in
function to do this. The window.setTimeout method enables you to specify
a time delay and a command that will execute after the delay passes.
...
Рейтинг: 0 / 0
12.02.2015, 22:56
    #38878589
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
ИзопропилWhite Owl,

на сервере - запуситить JOB (любым приемлемым способом), параметры джоба вернуть в куку,

бровзер неспешно запрашивает аякс- запросами статус джобаЭто уже предлагали.
Но мне не хочется плодить временные файлы которые будут нужны для этого решения. Хранить результат задачи в блобе в БД тоже не хочется. и по тем же причинам что и временные файлы.
...
Рейтинг: 0 / 0
13.02.2015, 00:21
    #38878613
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
White OwlИзопропилWhite Owl,

на сервере - запуситить JOB (любым приемлемым способом), параметры джоба вернуть в куку,

бровзер неспешно запрашивает аякс- запросами статус джобаЭто уже предлагали.
Но мне не хочется плодить временные файлы которые будут нужны для этого решения. Хранить результат задачи в блобе в БД тоже не хочется. и по тем же причинам что и временные файлы.Вам не хочется, а людям, кто этим буду пользоваться, куда смотреть?
...
Рейтинг: 0 / 0
13.02.2015, 00:39
    #38878617
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
skyANAWhite Owlпропущено...
Это уже предлагали.
Но мне не хочется плодить временные файлы которые будут нужны для этого решения. Хранить результат задачи в блобе в БД тоже не хочется. и по тем же причинам что и временные файлы.Вам не хочется, а людям, кто этим буду пользоваться, куда смотреть????? Я не понял вопроса.
...
Рейтинг: 0 / 0
13.02.2015, 01:02
    #38878624
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
White Owl,

занимать рабочий процесс/поток вебсервера ожиданием/исполнением длительной операции - не лучшая идея, так понятнее?
...
Рейтинг: 0 / 0
13.02.2015, 02:12
    #38878643
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
ИзопропилWhite Owl,

занимать рабочий процесс/поток вебсервера ожиданием/исполнением длительной операции - не лучшая идея, так понятнее?Ну.... С такой постановкой вопроса я конечно соглашусь. Но... А как иначе то?
Да и не так уж это и страшно на самом-то деле.
...
Рейтинг: 0 / 0
13.02.2015, 10:48
    #38878818
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
White OwlА как иначе то?
иначе - как писали - запустить асинхронный процесс и опрашивать готовность.

Да и пользователю легче будет ожидать появления файла.
...
Рейтинг: 0 / 0
13.02.2015, 10:58
    #38878842
FishHook
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
White OwlНо мне не хочется плодить временные файлы
Временный файл - это же не обязательно файл в файловой системе, можно его и в памяти хранить в каком-нибудь мем-кешед хранилище типа redis. Вообще, тут ничего выдумывать не надо, всё уже выдумано за нас
...
Рейтинг: 0 / 0
17.02.2015, 14:06
    #38881735
Дринкинс
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
Use WebSockets, Luke!
...
Рейтинг: 0 / 0
17.02.2015, 14:50
    #38881807
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
ДринкинсUse WebSockets, Luke!
расскажи как файл будешь принимать кроссброузерно
...
Рейтинг: 0 / 0
17.02.2015, 15:22
    #38881854
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
ИзопропилДринкинсUse WebSockets, Luke!
расскажи как файл будешь принимать кроссброузернонаверное лишь для оповещения.
...
Рейтинг: 0 / 0
17.02.2015, 16:03
    #38881951
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
Antonariyнаверное лишь для оповещения.
оповещения можно получать и через XMLHTTPRequest

как я понимаю - топикстартер хочет сказать GET и через 5 минут получить файл. Идея нездоровая
...
Рейтинг: 0 / 0
17.02.2015, 19:09
    #38882171
Дринкинс
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
ИзопропилДринкинсUse WebSockets, Luke!
расскажи как файл будешь принимать кроссброузерно

Вебсокет использовать для подачи команды на формирование файла, и на получение прогресса формирования. По окончании формирования - получить файл обычным гетом.
...
Рейтинг: 0 / 0
17.02.2015, 19:35
    #38882185
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
ДринкинсПо окончании формирования - получить файл обычным гетом.
топи читал хоть по диагонали?
...
Рейтинг: 0 / 0
17.02.2015, 20:36
    #38882214
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
ИзопропилДринкинсПо окончании формирования - получить файл обычным гетом.
топи читал хоть по диагонали?
браузер не может отвалиться по таймауту. отваливается сервер.
надо на сервере задавать длительность сессии. (или продлять при наличии задачи)
а Дринкинс ошибся на 50% - если запускать задачу websocket(ом) - то и готовый файл отправлять websocket(ом)
...
Рейтинг: 0 / 0
17.02.2015, 21:43
    #38882243
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
вадябраузер не может отвалиться по таймауту
легко и непринуждённо

вадято и готовый файл отправлять websocket(ом)
на диск сохрани
...
Рейтинг: 0 / 0
17.02.2015, 22:24
    #38882268
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
[quot Изопропил]вадявадято и готовый файл отправлять websocket(ом)
на диск сохрани
где сохранить? на сервере? у клиента? когда создаётся файл подразумевается, что на сервере при его создании он уже на диске, иначе он бы не создавался стока времени, ну а переданный клиенту он и так будет сохранён.
...
Рейтинг: 0 / 0
17.02.2015, 22:35
    #38882276
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
вадя,

у клиента как сохранить?

вадякогда создаётся файл подразумевается, что на сервере при его создании он уже на диске, иначе он бы не создавался стока времени
о чём это?
...
Рейтинг: 0 / 0
17.02.2015, 22:57
    #38882291
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Долгоиграющий запрос.
Изопропилвадя,

у клиента как сохранить?


у тебя с этим проблема?
авторавтор
когда создаётся файл подразумевается, что на сервере при его создании он уже на диске, иначе он бы не создавался стока времени

о чём это?

об этом
автор Надо чтобы юзер мог запустить эту задачу и дождался ответа в виде присылаемого файла.
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Долгоиграющий запрос. / 25 сообщений из 31, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]