У нас есть несколько дорогостоящих служб REST, реализованных в Helidon MP, которые часто занимают одну минуту, пока они не будут завершены и не будет возвращен ответ. Довольно часто случается, что клиент отключается до завершения ответа. Как можно отменить вычисления, если это произойдет?
Контекст: Службы REST реализованы с помощью Jakarta REST и принимают запросы JSON и записывают ответы JSON. Я попытался преобразовать службу в AsyncResponse и зарегистрировать ConnectionCallback, но ConnectionCallback.onDisconnect вызывается только тогда, когда сервер пытается вернуть ответ клиенту, и, следовательно, совершенно бесполезен. Можно было бы преобразовать конечную точку в SSE и периодически писать сообщения типа ping, но я бы предпочел менее навязчивые варианты.
Большое спасибо!
Подробнее здесь: https://stackoverflow.com/questions/798 ... n-client-d