Моя операция занимает 30 минут для обработки, которая вызывается запросом на вызов для отдыха. Я хочу дать клиенту немедленный ответ, который говорит, что операция продолжается, и обработка должна произойти в другом потоке, что является лучшим способом взломать это. Является ли отсроченный результат единственным способом.Длинный опрос весной mvc (асинхронный)
0
A
ответ
0
30 минут - это долгое время. Я предлагаю вам использовать websocket
s для обновления обновлений и состояния работы.
0
Поскольку вы предоставляете услуги отдыха, другой подход может заключаться в немедленном возврате клиенту «Принято» (202) или «Создано» (201) и предоставить ссылку на другую услугу, которая будет предоставлять обновления о состоянии выполнения обработки. Таким образом, клиент может решить, следует ли опросить сервер на наличие обновлений или просто предоставить пользователю кнопку «статус обновления».
0
Используйте очередь сообщений (ActiveMQ, Redis).
- Отправить запрос от клиента.
- Контроллер получает запрос, отправляет процесс/сообщение в очереди сообщений.
- Наверх Отказ от ответа клиенту, говорящий о его обработке.
- Другой поток для поиска изменений/нового процесса в очереди сообщений.
- Выполнение процесса - обновить статус в очереди сообщений, каждый шаг завершен. - (запущен/запущен/завершен/сбой).
- Вы можете отображать статус процесса каждый раз с идентификатором процесса в очереди.
Смежные вопросы
- 1. Длительный опрос весной
- 2. Длинный опрос в Yesod
- 3. Длинный опрос с NSURLConnection
- 4. Длинный опрос - Система сообщений
- 5. Длинный опрос в java
- 6. Длинный опрос Становится призраком
- 7. Длинный опрос путаницы
- 8. Длинный опрос с Qt
- 9. Длинный опрос на IIS
- 10. Длинный опрос ajax issue
- 11. Signalr-Objc длинный опрос
- 12. Весенний длинный опрос с deferredResult
- 13. Асинхронный процесс весной
- 14. Длинный опрос с php curl
- 15. Длинный опрос ajax struct issue
- 16. Длинный опрос JQuery в JAVA?
- 17. Javascript длинный опрос обработчика событий
- 18. Длинный опрос с GMail API
- 19. не длинный опрос с Socket.io
- 20. GAE Go и длинный опрос?
- 21. Длинный опрос в JQuery + JAVA?
- 22. Длинный опрос блокировки нескольких окон?
- 23. Как реализовать базовый «длинный опрос»?
- 24. PHP длинный опрос не удается
- 25. Длинный опрос с использованием Spring's DeferredResult
- 26. Асинхронный регистратор весной
- 27. Длинный опрос в Python с флягой
- 28. длинный опрос netty nio рамки java
- 29. Длинный опрос в приложении REST весны
- 30. Длинный опрос с codeignitor и node.js
Spring 4.2 поддерживает события, отправленные сервером http://zjhzxhz.com/2015/06/use-server-sent-event-in-spring-4-2/ –