Я однажды задавал этот вопрос в stackoverflow. К сожалению, без ответа. Однако я думаю, что это место могло бы быть более подходящим. Можно ли настроить tomcat для использования заранее определенного количества потоков для каждого веб-приложения? Идея заключается в том, что если я разверну несколько приложений на tomcat и предположим, что в одном из них есть ошибка, которая приводит к тупиковой ситуации.
Что происходит, так это то, что это приложение заставит tomcat создавать новые потоки, пока не достигнет параметра maxThreads. После этого больше нельзя будет создавать потоки, что также влияет на другие приложения. Было бы неплохо сказать tomcat что-то вроде «эй, вы можете обслуживать только 50 потоков на одно приложение». Если затем приложение с тупиковой ситуацией достигнет 50 потоков, оно будет просто заблокировано, но другие приложения останутся в сохранности.
Спасибо,
куку
Параметр maxThreads указывается на уровне соединителя, поэтому вы можете определить 1 соединитель для каждого приложения и обслуживать только одно приложение через каждое. Для этого вам, вероятно, понадобится обратный прокси-сервер, в зависимости от вашей среды и потребностей приложения.
Очевидно, вы также можете запустить несколько экземпляров tomcat, хотя это будет намного дороже с точки зрения ресурсов, но, возможно, полная изоляция между приложениями окупится.