|
Веб-сервисы. Обработать запрос пользователя и продолжить работу немедленно.
| ☑ |
0
Zixxx
07.07.16
✎
07:30
|
Как происходит работа:
1. Пользователь отправляет на север небольшой массив данных
2. Серверу нужно примерно 3-5 секунд чтобы его обработать
Как нужно сделать
1. Пользователь отправляет на сервер небольшой массив данных
2. Серверу нужно вернуть ответ что данные получены и закрыть соединение
3. Сервер должен сразу после ответа продолжить работы над полученным массивом данных
Как можно сделать. Регламентные задания не подходят, запускать их с интервалом в 5 сек - это большой промежуток и накладно их дергать каждые 5 секунд.
Еще думал задавать расписание для регламентного задания, +1 - 2 секунды до его записи, но если сервер начнет лагать то задание не выполниться.
Какие есть еще варианты?
|
|
1
Xapac
07.07.16
✎
07:51
|
(0) А как ты планируешь узнать "Закончил ли работу сервер"?
|
|
2
ИсчадиеADO
07.07.16
✎
07:54
|
а если в методе веб сервиса фоновое задание запустить и закончить метод, фоновое задание же отработает вроде
|
|
3
Serginio1
07.07.16
✎
08:03
|
|
|
4
DmitrO
07.07.16
✎
08:08
|
(2)именно так и надо сделать, если клиенту веб-сервиса не нужны результаты обработки данных
|
|
5
mistеr
07.07.16
✎
08:50
|
(0) Одно или несколько фоновых заданий, которые обрабатывают очередь.
|
|
6
mistеr
07.07.16
✎
08:51
|
(5) + хорошо подумай, что будешь делать, если клиент дважды пришлет один и тот же запрос.
|
|
7
Остап Сулейманович
07.07.16
✎
09:17
|
Собственно все уже сказано. ВЕБ-сервис собирает данные и складывает их например в РС. фоновое обрабатывает то, что наскладировал ВЕБ-сервис.
Правда есть один момент. Все понятно пока в РС остаются необработанные данные. А вот дергать РС когда там нет данных - не есть хорошо.
ИМХО Нужно в ВЕБ-сервисе каждый раз проверять выполняется ли фоновое и если нет - запускать его однократно.
|
|
8
mistеr
07.07.16
✎
11:34
|
(7) Запуска по расписанию недостаточно?
|
|
9
xXeNoNx
07.07.16
✎
11:59
|
(7) Я за стек(РС) + фоновое. Елозить по по пустому РС не хочется? А ты не будешь, он же пустой. Как вариант - планы обмена или инициализировать параметр сеанса какой-либо...
Лучше обработать сразу партию из 10, чем по 1ой - 10 раз.
|
|