Возможен ли такой сценарий?

Discussion in 'Общие вопросы' started by Alexander Novikov, Apr 6, 2018.

  1. Полосу проверил - огромная, 9 гигабит между машинами.
  2. @Max - на это нет ответа? Как же мне быть?
  3. Max

    Max Administrator Staff Member

    Возможно что-то будет видно по логам. Пришлите доступ к обоим серверам. Проверим.
    По конфигам пока не видно никаких ошибок.
    logs@flashphoner.com
  4. Хорошо, сделаю так:

    1) отлажу автодеплой до конца и выполню тесты какие могу
    2) создам пару c1.small.x86 (ибо дешевле - 4 Physical Cores @ 3.5 GHz (1 × E3-1240 v5), 32 GB of DDR3 ECC RAM (2 × 16 GB), 120 GB of SSD, 2Gbps Bonded Network) и запущу в нём в цикле играть видеофайл с ffmpeg, убежусь что проблема есть на нём тоже (думаю 500 потоков по 2 мегабита такая машина должна тянуть на отдачу, без всяких выкрутасов с перекодировками, верно)? моя проблема в том что даже мега сверхмощная никак не тянет 500 пока что. без отпадений потоков даже 100 не тянет.
    3) вышлю доступы. а ssh public key можно? ну не по паролю же, это совсем уж XX век
    Last edited: Apr 16, 2018
  5. Max

    Max Administrator Staff Member

    Да c1.small.x86 должен отработать 500 стримов.
    Тогда просьба прислать private key. Публичные ключи в простой форумной поддержке мы не генерим, т.к. лишние коммуникации.
  6. OK.

    Завтра. закопались с деплоем. слишком много экспекта, кодеры слабоваты в нём.
    Last edited: Apr 16, 2018
  7. Нашу часть проверили - 20 потоков на машине генерится с 25-28% нагрузки проца, что должно быть гуд. имхо, того что остаётся от 56-ядерной машины с 384 рамы должно с лихвой хватать на отдачу 2000 потоков.

    Поднимаю 4-ядерную с 32 рамы и пробую отдать 500 потоков - если не выйдет даю ssh.
  8. выслал всё на почту. посмотрите, плиз.

    при попытке затянуть 500 потоков доходит до 280-290 (при этом нагрузка проца 30% и памяти свободно процентов 70 тоже, это при том что 20% проца сразу ест ffmpeg на одну генерацию этого потока), топчется на этом уровне какое-то время, и начинает падать. через 3-4 минуты после запуска пулла падает до 0.

    похоже что это неисправность этой тестовой консоли, а не самого сервера, как мне начинает казаться. повторил на 1 потоке вообще, выслал скрины с отладчиком хрома и ошибками, почтой.

    каждый поток держится в pull минуты 2. даже если он один. в тесте с 500 не доходило до 500 похоже просто потому что первые отпали раньше чем последние успели создаться, а не оттого что сервер был перегружен. это консоль из-за какой-то таинственной ошибки их откидывает.

    но собственно стриминг и проигрывание потока работает совершенно стабильно, никогда не отпадает. т.е. я почти уверен что это не бага сервера, а бага консоли - но мне всё равно надо перед продакшеном протестить на нагрузку.
    Last edited: Apr 17, 2018
  9. не, это просто ендпоинт /rest-api/stream/find_all который выдаёт 200 и содержимое если потоки есть и 404 если их нет - оттуда и ошибки в консоли. факт в том что даже 1 поток умирает на pull через примерно 2 минуты после запуска :( на том сервере на который стримлю - сколько угодно крутится. как ни крутил настройки потока - в том числе и звук добавлял - результат один. если я как-то "не так" его энкодю - скажите как надо правильно, плиз? строку для ffmpeg выслал почтой. с другой стороны, серверу на который стримлю это ничем не мешает почему-то.
    Last edited: Apr 17, 2018
  10. То же самое наблюдается и просто с потоком с вебки. Шлю на один сервер, пуллю с другого в 10 копиях - через минуты 2 отпадают все. Так что это не энкодинг - просто пулл у меня почему-то не работает устойчиво, затянутый поток живёт 2 минуты.

    я могу конечно провести лоадтест запустив на headless chrome 2000 копий принимающей страницы на куче-куче амазон инстансов скриптом, но уберегите меня плиз от этого гемора :)
  11. запускал по 10000 потоков кучу раз подряд так чтобы их цепляло быстрее чем успевают отваливаться - на несколько минут догонял до 850 потоков и задержка начинала расти только начиная с примерно 700-750. то есть как бы примерно то что я и хотел получить или даже лучше.

    проблема в том что аналогично проверить мощный сервер не выйдет - до 2000 потоков я таким методом не догоню. надо чтобы не отваливались. если только засасывать не 1 сервером а сразу 3-мя? но это звучит как-то ну совсем не серьёзно. и я хотел бы чтоб оно хотя бы часик поработало - убедиться что рама не отжирается.

    у меня чувство что какой-то keepalive отламывается...
    Last edited: Apr 18, 2018
  12. о, вижу копается кто-то, не трогаю
  13. Пока что проблема осталась как и была.
  14. Max

    Max Administrator Staff Member

    Добавили на оба сервера настройку:
    wcs_activity_timer_timeout=86400000 (24 часа)
    Сессии между серверами закрывались по этому таймауту, по-умолчанию он равен 60 сек.
    Проверьте стало ли лучше.
    Если нет, еще раз проверим позже.
  15. нет совершенно ничего не изменилось, точно так же отпадает поток
  16. Если проблемы с воспроизведением, вот записал видос всего что я делаю
    https://codeda.com/screen.mov

    команда ffmpeg

    впрочем повторяется при любых настройках потока - это неважно
  17. перезапускал сервак - сорри если что
  18. вижу что тестится штука потоков, работает вроде норм

    скажите когда готово чтоб я не прерывал, и какие изменения в конфиге

    прошу обратить внимание, что камня не хватает не отдающему, а принимающему серверу - отдающий практически не нагружен несмотря на то что штуку потоков отдаёт
  19. Max

    Max Administrator Staff Member

    Настройки не меняли.
    На сервер опубликовали 1 поток по WebRTC.
    Из консоли забрали 1000.
    Скриншоты в аттаче.

    Attached Files:

Share This Page