Прогрев CDN потоков на Edge¶
Описание¶
Обычно проигрывание потока c Edge сервера в CDN для первого подписчика стартует позже, чем для всех последующих, поскольку необходимо время на установку соединений для передачи медиа между всеми узлами маршрута. Насиная со сборки 5.3.295, потоки в CDN могут быть прогреты, или заранее захвачены на Edge c Origin сервера (через Transcoder сервер при необходимости).
Настройка прогрева CDN потоков¶
Прогрев CDN потоков включается на Edge при помощи параметра
По умолчанию, ни один поток не захватывается. Для того, чтобы прогрев стартовал, необходимо описать фильтры потоков в файле настроек /usr/local/FlashphonerWebCallServer/conf/cdn_warmup_trap.json. Таким образо, предотвращается перегрузка кналов между серверами внутри CDN и самих серверов.
Простейший пример настройки для захвата на Edge всех потоков, публикуемых на Origin (не рекомендуется использовать в эксплуатации)
Пример более сложного фильтра:
- потоки с именем
abrStreamзахватываются для проигрывания как ABR по двум профилям и в оригинальном качестве без транскодинга; - потоки с именем
sourceStreamзахватываются только в оригинальном качестве - все остальные потоки захватываются в качестве 360p
{
"streams" :
[
{
"streamName" : "abrStream.*",
"serverIps" : [ "192.168.88.0/24" ],
"abr": true,
"profiles" : [ "SOURCE", "-720p", "-360p" ]
},
{
"streamName" : "sourceStream.*",
"serverIps" : [ "192.168.88.0/24" ],
"profiles" : [ "SOURCE" ]
},
{
"streamName" : ".*",
"serverIps" : [ "192.168.88.0/24" ]
}
],
"defaultProfile" : "-360p"
}
Здесь:
streamName- маска имени потока для захватаserverNames- список доменных имен Origin серверов, на которых должен быть опубликован потокserverIps- список IP адресов Origin серверов, на которых должен быть опубликован потокprofile- профиль транскодинга потока, должен быть описан в файлеcdn_profiles.ymlSOURCE- специальное ключевое слово для захвата потока в оригинальном качестве (без любого транскодинга видео)defaultProfile- профиль транскодинга по умолчанию, используется для всех потоков, подходящих под фильтры для которых не задан определенный список профилей
TПоток, подходящий под фильтр, будет захвачен с Origin, как только опубликуется, и его захват не будет остановлен до тех пор, пока не остановится публикация.
REST API для управления прогревом¶
Прогревом CDN потоков можно управлять при помощи REST API /rest-api/v3/cdn/warmup