Helidon MP: как отменить дорогостоящие вычисления в службе REST при отключении клиента?JAVA

Программисты JAVA общаются здесь
Anonymous
Helidon MP: как отменить дорогостоящие вычисления в службе REST при отключении клиента?

Сообщение Anonymous »

У нас есть несколько дорогостоящих служб REST, реализованных в Helidon MP, которые часто занимают одну минуту, пока они не будут завершены и не будет возвращен ответ. Довольно часто случается, что клиент отключается до завершения ответа. Как можно отменить вычисление, когда это произойдет? Есть ли способ проверить, открыто ли соединение?
Контекст: Службы REST реализованы с помощью Jakarta REST и принимают запросы JSON и записывают ответы JSON. Я попытался преобразовать службу в AsyncResponse и зарегистрировать ConnectionCallback, но ConnectionCallback.onDisconnect вызывается только тогда, когда сервер пытается вернуть ответ клиенту, и, следовательно, совершенно бесполезен. Можно было бы преобразовать конечную точку в SSE и периодически писать сообщения типа ping, но я бы предпочел менее навязчивые варианты.

Большое спасибо!

Подробнее здесь: https://stackoverflow.com/questions/798 ... n-client-d

Вернуться в «JAVA»