Я блокирую @RequestMapping, открыв несколько закладок со Спринг

В момент открытия нескольких закладок в браузере, в специфическом средстве 5 все функционирует хорошо в @RequestMapping, но открыв шестую закладку, он блокируется и должен надеяться на то, что они заканчивают 5, чтобы начинать загружать шестую закладку. Как он мог бы предотвращать сбой и я продолжил? и из-за которого оно последует за этим?

@Controller
@RequestMapping(value = "/Inventario")
public class InventarioController {


@RequestMapping(value = "/yyy", method = RequestMethod.GET)
    public String obtenerGET(HttpServletRequest request, Model model) throws ParseException{

        for (int i = 0; i < 2500; i++) {
            System.out.println("Entro " + i);
        }
// Todod funciona bien hasta que abro la sexta 

        return "XXX/yyy";
    }
}
2
задан 13.08.2019, 22:09
1 ответ

Так, что не знает детали, как разворачивается твое приложение и характеристики твоей машины, он vastante странно, что он приводится к сбою только 5 requests конкурирующие.

Казался, что у тебя только было 5 трэдов, доступных на сервере для того, чтобы получить request, и когда он прибывает 6, сервер должен надеяться на то, что один из первых 5 трэдов освобожден....., но - vastante редко, обычно Спринг разворачивается в Tomcat, назначенного по умолчанию количества которого трэдов 200.

Сейчас, если ты используешь Webflux (программирование активирует), сервер отличается, это Netty. Этот сервер функционирует различно, с одним pequeГ±o набор трэдов (ему может удаваться использовать очень немногие, 5 может быть случайность в твою проблему), в event loop, который обрабатывает все request, которые прибывают, и ввиду того, что ты блокируешь мало существующих трэдов, так как приложение остается unresponsive.

0
ответ дан 01.12.2019, 20:10

Теги

Похожие вопросы