Я искал все вокруг и не нашел хороших объяснений или примеров использования Spring 4.x (Springboot) с контейнером EmbdedTomcat и ручной установки атрибута startStopThreads
, описанного здесь
Я заметил, что задержка запуска нашего приложения со временем увеличивается, но также вижу (в журналах), что пул потоков, помеченный [localhost-startStop-1]
, является единственным потоком, который когда-либо выполнялся после [main]
. Я хотел бы добавить больше потоков в этот пул, чтобы ускорить наш асинхронный запуск.
Может ли кто-нибудь помочь мне с проблемой Tomcat startStopThreads
?
ОБНОВЛЕНИЕ.
Хорошим вариантом использования для этого является динамическое создание таблиц DynamoDb при запуске. Код создания заключен в вызов Executor.submit
, однако журналы показывают, что они выполняются последовательно. Вот пример того, что в логах:
2017-02-22 15:000:000:01,000 [main ] INFO Creating table 1
2017-02-22 15:000:000:05,000 [localhost-startStop-1] INFO Creating table 2
2017-02-22 15:000:000:10,000 [localhost-startStop-1] INFO Creating table 3
К сожалению, я никогда не видел, чтобы localhost-startStop-2
выполнял что-либо, что должно было быть, если бы оно было в пуле потоков.
EmbeddedServletContainerFactory
, как в ответе на это ТАК вопрос. Существуют различныеserver.tomcat
переменные, которые можно установить вapplication.properties
, описанные в Документы Spring, но я не вижуstartStopThreads
. - person whistling_marmot   schedule 22.02.2017EmbeddedServletContainerFactory
, и я пытался установить свойстваserver.tomcat.maxThreads
иserver.tomcat.spareThreads
, но это не помогло. Мне даже удалось найти объектHost
и добавить значение для его атрибутаsetStartStopThreads
, однако это тоже не помогло. - person Dan   schedule 22.02.2017Executors.newSingleThreadExecutor()
? - person AntJavaDev   schedule 23.02.2017