Веб-клиент будет заблокирован в ожидании ответа, но на сервере ничего не будет заблокировано, а серверные ресурсы могут использоваться для обслуживания других клиентов.Play framework работает с длинными задачами блокировки, не блокируя клиента
Некоторые из запросов клиента требуют, чтобы мой сервер выполнял длительные задачи блокировки. Я понимаю, что могу выполнить их в отдельном пуле потоков.
Но я также не хочу, чтобы клиент был заблокирован. Я просто хочу немедленно ответить клиенту (например, OK получил вашу длинную задачу блокировки). Клиент не заботится о том, чтобы получить результат выполнения задачи, он просто должен знать, что я работаю над его выполнением.
Как я могу реализовать это поведение в игре?
Я думаю, что могу создать очередь заданий и использовать другой поток для обработки очереди заданий. Если контроллер воспроизведения только добавляет задание в очередь, а другой поток выполняет задания из очереди. Должен ли я это сделать? Должен ли я использовать акка Акка? (Я не знаю, Akka мне нужно будет выучить)