Тонкая настройка процессорных потоков¶
Начиная со сборки 5.2.1992 , добавлены возможности управления процессорными потоками (threads) сервера, обслуживающими соединения для сигналинга, публикации и проигрывания медиа потоков.
По умолчанию, процессорные потоки организуются в пулы, настроенные следующим образом:
thread_pools_config.json
{
"rtmp_SERVER": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "RTMP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": true,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"rtmfp_SERVER": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "RTMFP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"ws_SERVER": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "WS",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": true,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"flash_POLICY_SERVER": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "FlashPolicy",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": true,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"turn_SERVER": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "TurnServer",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": true,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"http_SERVER": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "HTTP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": true,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"rtsp_SERVER": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "RTSP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": true,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"hls_SERVER": {
"nativeStack": true
},
"ws_CDN_SERVER": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "CDNInbound",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": false,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"ws_CDN_AGENT": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "CDNOutbound",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"rtmp_AGENT": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "RtmpPublisher",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"rtsp_AGENT": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "RtspAgent",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"ws_WCS_AGENT": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "WCSAgentWS",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"webRTC_TCP_CLIENT": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "TcpClient",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"webRTC_UDP": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "STUN-UDP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"frep_SERVER": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "FREP-Server",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": false,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"frep_AGENT": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "FREP-Client",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"webRTC_TCP_SERVER": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "ICE-TCP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": false,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"mpeg_TS_UDP": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "MPEG-TS-UDP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"mpeg_TS_SRT": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "MPEG-TS-SRT",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
}
}
Как правило, изменение настроек по умолчанию не требуется. Однако, если необходимо оптимизировать нагрузку, можно изменять отдельные параметры пулов процессорных потоков. Для этого используется конфигурационный файл /usr/local/FlashphonerWebCallserver/conf/thread_pools_config.json
, в котором указываются изменяемые параметры. Например, таким образом можно отключить использование Non-blocking IO при передаче WebRTC по TCP для уменьшения расхода оперативной памяти:
Необходимо перезапустить WCS, чтобы применить изменения.
Допускается изменять следующие параметры:
nio
- включает/отключает использование Non-blocking IOstaticPool
- включает/отключает использование статического (нерасширяемого) пула процессорных потоков
Актуальную настройку и текущее состояние пулов процессорных потоков можно проверить при помощи запроса статистики
Пример ответа на запрос:
thread_pools_group_param
{
"thread_pools_group_param": {
"thread_pools_info": {
"WebRTC_TCP_SERVER": [],
"WebRTC_TCP_CLIENT": [],
"WebRTC_UDP": [],
"RTMP_SERVER": [
{
"boss": {
"threads_count": 1,
"tasks_queue_size": 1,
"threads_state": {
"RTMP-BOSS-pool-12-thread-1": "RUNNABLE"
}
},
"worker": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
}
}
],
"RTMP_AGENT": [],
"WS_SERVER": [
{
"boss": {
"threads_count": 1,
"tasks_queue_size": 1,
"threads_state": {
"SSL-WS-BOSS-pool-18-thread-1": "RUNNABLE"
}
},
"worker": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
}
},
{
"boss": {
"threads_count": 1,
"tasks_queue_size": 1,
"threads_state": {
"DASHBOARD-SSL-WS-BOSS-pool-10-thread-1": "RUNNABLE"
}
},
"worker": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
}
},
{
"boss": {
"threads_count": 1,
"tasks_queue_size": 1,
"threads_state": {
"WS-BOSS-pool-16-thread-1": "RUNNABLE"
}
},
"worker": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
}
},
{
"boss": {
"threads_count": 1,
"tasks_queue_size": 1,
"threads_state": {
"DASHBOARD-WS-BOSS-pool-8-thread-1": "RUNNABLE"
}
},
"worker": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
}
}
],
"TURN_SERVER": [
{
"boss": {
"threads_count": 1,
"tasks_queue_size": 1,
"threads_state": {
"TurnServer-BOSS-pool-42-thread-1": "RUNNABLE"
}
},
"worker": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
}
}
],
"HTTP_SERVER": [
{
"boss": {
"threads_count": 2,
"tasks_queue_size": 2,
"threads_state": {
"SSL-HTTP-BOSS-pool-4-thread-1": "RUNNABLE",
"SSL-HTTP-BOSS-pool-4-thread-2": "RUNNABLE"
}
},
"worker": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
}
},
{
"boss": {
"threads_count": 2,
"tasks_queue_size": 2,
"threads_state": {
"HTTP-BOSS-pool-2-thread-1": "RUNNABLE",
"HTTP-BOSS-pool-2-thread-2": "RUNNABLE"
}
},
"worker": {
"threads_count": 1,
"tasks_queue_size": 1,
"threads_state": {
"HTTP-pool-3-thread-5": "RUNNABLE"
}
}
}
],
"RTSP_SERVER": [
{
"boss": {
"threads_count": 1,
"tasks_queue_size": 1,
"threads_state": {
"RTSP-BOSS-pool-40-thread-1": "RUNNABLE"
}
},
"worker": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
}
}
],
"RTSP_AGENT": [],
"WS_CDN_SERVER": [
{
"boss": {
"threads_count": 1,
"tasks_queue_size": 1,
"threads_state": {
"CDNInbound-BOSS-pool-21-thread-1": "RUNNABLE"
}
},
"worker": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
}
}
],
"WS_CDN_AGENT": [],
"MPEG_TS_UDP": [],
"MPEG_TS_SRT": [],
"WS_WCS_AGENT": [
{
"boss": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
},
"worker": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
}
}
],
"FREP_SERVER": [],
"FREP_AGENT": [],
"RTMFP_SERVER": [
{
"worker": {
"threads_count": 1,
"tasks_queue_size": 1,
"threads_state": {
"RTMFP-pool-15-thread-1": "RUNNABLE"
}
}
}
],
"FLASH_POLICY_SERVER": [
{
"boss": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
},
"worker": {
"threads_count": 0,
"tasks_queue_size": 0,
"threads_state": {}
}
}
]
},
"thread_pools_config": {
"rtmp_SERVER": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "RTMP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": true,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"rtmfp_SERVER": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "RTMFP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"ws_SERVER": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "WS",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": true,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"flash_POLICY_SERVER": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "FlashPolicy",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": true,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"turn_SERVER": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "TurnServer",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": true,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"http_SERVER": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "HTTP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": true,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"rtsp_SERVER": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "RTSP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": true,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"hls_SERVER": {
"nativeStack": true
},
"ws_CDN_SERVER": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "CDNInbound",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": false,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"ws_CDN_AGENT": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "CDNOutbound",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"rtmp_AGENT": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "RtmpPublisher",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"rtsp_AGENT": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "RtspAgent",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"ws_WCS_AGENT": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "WCSAgentWS",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"webRTC_TCP_CLIENT": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "TcpClient",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"webRTC_UDP": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "STUN-UDP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"frep_SERVER": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "FREP-Server",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": false,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"frep_AGENT": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "FREP-Client",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"webRTC_TCP_SERVER": {
"staticPool": false,
"executionHandlerInPipeline": false,
"prefix": "ICE-TCP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"deadlockAwareNioWorkers": false,
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"mpeg_TS_UDP": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "MPEG-TS-UDP",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"nio": true,
"boss": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
},
"mpeg_TS_SRT": {
"staticPool": true,
"executionHandlerInPipeline": false,
"prefix": "MPEG-TS-SRT",
"worker": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
},
"executionHandler": {
"custom": false,
"coreThreads": 4,
"maxThreads": 8,
"threadTimeoutSec": 300,
"queueSize": 100
}
}
}
}
}
Отображаются следующие параметры:
threads_count
- количество процессорных потоков в пулеtasks_queue_size
- размер очереди задач, обслуживаемых пулом процессорных потоковthreads_state
- список и текущее состояние процессорных потоков в пулеthread_pools_config
- текущая настройка процессорных потоков