2017-01-05 5 views
0

Было бы здорово, если бы кто-то помог мне в следующем.Конфигурирование префикса имен потоков в транспорте Jetty

В настоящее время мы используем Jetty для отображения нашего интерфейса REST (который настроен с использованием Spring), и я хочу иметь возможность устанавливать префикс потоков, используемых для обработки этих вызовов. Я считаю, что я нашел изменения в CXF, который позволит это поведение:

https://issues.apache.org/jira/browse/CXF-5919

кажется, изменить первоначальный «Qtp» значение, что вы хотите. (Версия есть ли включать эти изменения) Проблема заключается в том, что я не могу на самом деле работает, как установить его, сначала я попробовал следующее:

<Configure id="server" class="org.eclipse.jetty.server.Server"> 
    <Set name="threadPool"> 
    <New class="org.eclipse.jetty.util.thread.QueuedThreadPool"> 
     <Set name="minThreads">10</Set> 
     <Set name="maxThreads">1000</Set> 
     <Set name="threadNamePrefix">myname</Set> 
    </New> 
    </Set> 
</Configure> 

http://wiki.eclipse.org/Jetty/Reference/jetty.xml_syntax#Creating_a_NewObject_and_Setting_It_on_the_Server

Но это не работает, как это не QueuedThreadPool, который имеет значение threadNamePrefix.

Мне было бы здорово, если бы кто-то смог дать мне несколько указателей относительно того, как я могу обновить свой файл jetty.xml, чтобы установить это значение.

Спасибо

Роб

ответ

0

Глядя на исходный код Jetty я вижу, что name атрибут является один вы после этого. Ваш пример должен выглядеть следующим образом:

<Configure id="server" class="org.eclipse.jetty.server.Server"> 
    <Set name="threadPool"> 
    <New class="org.eclipse.jetty.util.thread.QueuedThreadPool"> 
     <Set name="minThreads">10</Set> 
     <Set name="maxThreads">1000</Set> 
     <Set name="name">myname</Set> 
    </New> 
    </Set> 
</Configure> 

Это результат (от VisualVM) на моей установке: Thread names as seen in VisualVM

+0

Спасибо, что нашли время, чтобы ответить и дать подробную разбивку, но я думаю, что обновления все имена нитей не так ли? - Изменение, которое я получаю, - это только «транспортный поток HTTP Jetty» (как описано в CXF-5919). - Спасибо, Rob – Rob

+0

Вы можете определить другой пул потоков для каждого соединителя Jetty. Какой транспорт CXF вы используете? Причал сервлета? Я бы подумал, что вы сконфигурируете «двигатель» (и, возможно, «коннектор») где-нибудь в конфигурации Spring. Вы можете переопределить разъем, который вы хотите использовать там. Не могли бы вы обновить вопрос с помощью некоторого примера конфигурации? –