Техническая информация о сайте
магиядружбы.рф


На этой странице приводятся подробные разъяснения технического характера - как для IT-специалистов, так и для обычных пользователей которые регулярно сталкиваются с проблемами на нашем сайте.


Системные требования

Мы активно, но осторожно, внедряем современные веб-технологии на нашем сайте, с целью оптимизации сетевых и аппаратных ресурсов как нашего сервера так и вашего оборудования. При этом оптимизация трафика для нас приоритетнее обратной совместимости с устаревшим оборудованием. Однако мы всё же стараемся сохранить совместимость нашего сайта с устройствами имеющими некоторые признаки морального устаревания, если по нашим сведениям они составляют значительную часть наших пользователей. К примеру, мы не поддерживаем браузер Internet Explorer, т.к. доля этого браузера среди наших пользователей крайне мала; при этом мы поддерживаем относительно старые ПК со слабыми процессорами и небольшим объёмом ОЗУ, которые даже не были обновлены до Windows 10.

В идеале, наш сайт лучше всего посещать с актуальной версии широко распространённого браузера (Яндекс.Браузер, Google Chrome, Mozilla Firefox, Opera) из-под актуальной версии операционной системы (Windows 10, MacOSX, Android 5 или новее, iOS 8 или новее) с актуальными драйверами. В таком случае, скорее всего, у вас не возникнет каких-либо неполадок на нашем сайте.

Минимальные системные требования (для ПК-версии сайта):
  • Процессор: 2 ядра архитектуры x86 по 1,8 ГГц.
  • ОЗУ: 2 ГБ.
  • Операционная система: Windows 7 Service Pack 1 со всеми обновлениями.
  • DirectX: 9.0c.
  • Экран: CRT 1024*600 пикс.
  • Ширина интернет-канала: 180 кбит/сек.

  • Рекомендуемые системные требования (для ПК-версии сайта):
  • Процессор: 3 ядра архитектуры x64 по 2 ГГц или больше.
  • ОЗУ: 4 ГБ или больше.
  • Операционная система: Windows 10 актуальной сборки.
  • DirectX: 12 или новее.
  • Экран: IPS 1920*1080 пикс.
  • Ширина интернет-канала: 1600 кбит/сек или больше.

  • Что должно поддерживаться вашим устройством (браузером, операционной системой, драйверами):
  • JavaScript;
  • iFrame;
  • HTML-5/CSS-3;
  • Векторная графика формата SVG;
  • Изображения формата WebP;
  • Видео H264 без Adobe Flash Player;
  • Аудио HE-AAC без Adobe Flash Player.

  • Также желательно иметь поддержку защищённого соединения (HTTPS). На момент написания этой страницы шифрование необязательно, на сайт всё ещё можно попасть по незащищённому протоколу HTTP, однако в течение 2020 года планируется прекратить поддержку незащищённого соединения.


    Видео на сайте

    Видео на нашем сайте обеспечивает наша собственная разработка. Мы создали плеер, который может воспроизводить изображение и звук из отдельных файлов, а также накладывать субтитры ASS-формата в реальном времени. Это позволяет хранить эпизоды MLP на нашем сервере максимально эффективно, а также обеспечивает быстрое переключение озвучек и субтитров на лету прямо во время просмотра.

    За синхронность воспроизведения дорожек отвечает специальный скрипт: он перематывает видеодорожку и субтитры на текущий таймкод аудиодорожки, когда рассинхрон достигает определённого порогового значения. Во избежание некорректной работы скрипта синхронизации, рекомендуется ставить видео на паузу перед переключением вкладок в браузере.

    В связи с тем, что все эпизоды MLP на нашем сайте хранятся как видеодорожки и звуковые дорожки в отдельных файлах, мы не предоставляем возможность скачивания. Если ты умеешь собирать видеофайлы из отдельных дорожек видео и звука - можешь ловить дорожки в консоли своего браузера во время воспроизведения, все ссылки прямые и постоянные, никаких DRM и прочих обфускаций мы не используем.

    Сейчас мы пишем следующую версию плеера, которая предусматривала бы работу в фоновой вкладке, а также могла бы собирать эпизоды в медиаконтейнер MP4/MKV для скачивания.

    Видеодорожки энкодированы кодеком AVC/H.264 (Advanced Video Codec). Это наиболее распространённый кодек видео в Интернете на момент написания данной страницы. Для экономии файлового пространства на нашем сервере, а также пропускной способности, видео пережато в профиль High с пресетом Placebo, позволяющим уместить максимум качества в минимум битрейта. Переходить на HEVC/H.265 (High-Effective Video Coding), VP9 или AV-1 пока рано. Целевой битрейт видеодорожек в Full-HD составляет 1435 кбит/сек, а в 144p всего лишь 66 кбит/сек. Некоторые видеодорожки пережаты с ещё меньшим битрейтом: например, проекту "Rainbow Dash Presents", в котором крайне малая частота кадров, хватает 333 кбит/сек для Full-HD и 33 кбит/сек для 144p.

    Аудиодорожки энкодированы кодеком HE-AAC (High Effective Advanced Audio Codec). Теоретически, он поддерживается везде, где поддерживается AAC, но при этом более эффективно распоряжается битрейтом. Количество каналов - 2 (стерео), частота дискретизации - 44,1 кГц. Целевой битрейт для оригинальной озвучки и дубляжей - 112 кбит/сек, целевой битрейт большинства закадровых озвучек - от 64 кбит/сек до 96 кбит/сек. Некоторые озвучки пережаты с ещё меньшим битрейтом: например, пародийная озвучка "Agent DieGo", исходник который пишется вообще на аналоговые кассеты из прошлого века, с битрейтом в 32 кбит/сек звучит даже более чётко и разборчиво чем в 64 кбит/сек и выше.


    Сервер

    Весь наш сайт, включая весь контент (видео, музыка, комиксы, игры и всё остальное), хранится на наших собственных серверах. Основной сервер располагается в городе основателя ТО "Магия Дружбы" - в Уфе. Дополнительные сервера, работающие в качестве "зеркал" в то время когда основной сервер недоступен (например во время планового техобслуживания или аварийных ситуаций), находятся в других городах и администрируются местными айтишниками.

    Характеристики нашего сервера

    На момент написания этой страницы, вычислительные мощности нашего основного сервера таковы:
  • Процессор: AMD Athlon II, 2 ядра архитектуры x64 по 2,5ГГц.
  • ОЗУ: 8ГБ DDR3.
  • Видеокарта: GeForce GT 710.
  • Файловое пространство: 500ГБ SSD, 1000ГБ HDD.
  • Услуги связи: 500Мбит/сек, статический IP, два доменных имени.

  • Во второй половине 2020 года, планируется апгрейд сервера до следующих показателей:
  • Процессор: AMD Ryzen 5 1600X, 6 ядер (12 потоков) архитектуры x64 по 3,6ГГц.
  • ОЗУ: 16ГБ DDR4.
  • Видеокарта: GeForce GT 710.
  • Файловое пространство: 1000ГБ SSD, 1000ГБ HDD.
  • Услуги связи: 500Мбит/сек, статический IP, два доменных имени.

  • Зачем серверу видеокарта

    Помимо сайта ТО "Магия Дружбы", сервер также стримит круглосуточный онлайн-телеканал "RusBronyTV". Видеокарта нужна для того, чтобы вещание нагружало не центральный процессор (он у нас, как видите, очень слабый), а графический процессор (мы специально установили в сервер самую дешёвую на тот момент видеокарту с аппаратным энкодером H264 - как вы можете видеть, она стабильно стримит Full-HD в 30FPS).

    Зачем использовать SSD, чем нас не устраивает HDD

    SSD и HDD - конструктивно полностью разные устройства. HDD для считывания данных нужно позиционировать головку на определённый сектор вращающегося блина. SSD просто получает данные из определённой ячейки микросхем флеш-памяти. Таким образом, в условиях когда необходимо считывать десятки файлов одновременно, HDD слишком медленное устройство.

    В 2018 году, когда мы решили перенести видеодорожки на собственный сервер, выяснилось, что HDD не успевает обслужить всех наших пользователей в часы-пик (16-23 часов МСК): сайт загружался в разы медленнее чем утром, воспроизведение видео часто прерывалось для прогрузки; при этом нагрузка на линию связи была неполной, а вот нагрузка HDD показывала 100%. Нам пришлось срочно купить SSD и перенести на него содержимое жёсткого диска - именно так проблема была решена.

    Почему мы не арендуем выделенные сервера (виртуальные хостинги)

    Во-первых, это слишком дорого. Хостинг-провайдеры берут за месяц сумму сопоставимую со стоимостью оборудования. Разумнее заплатить один раз 15 тысяч рублей за комплектующие чтобы собрать сервер у себя дома и единолично им владеть (в дальнейшем платить только за 300Вт электричества и услуги связи, это менее 1 тысячи рублей в месяц), чем платить по 12 тысяч каждый месяц за виртуальный сервер с такими же характеристиками. По цене 300Вт электричества и услуг связи можно арендовать только что-то на уровне Raspberry Pi.

    Во-вторых, сложно найти такой крутой виртуальный хостинг, как наш реальный сервер. Мы рассматривали разные варианты, какие VDS предоставляют хостинг-провайдеры. Только один из них похвастался наличием видеокарты, но эта конфигурация оказалась слишком мощной для нас.

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

    Исходя из этого, вопрос: а зачем нам арендовать виртуальный сервер, какие преимущества это даёт взамен на множество перечисленных проблем?


    Сторонние платформы

    Мы стараемся избегать использования каких-либо сторонних платформ на нашем сайте, во избежание различных форс-мажоров (рейдов правообладателей, защит от нештатного использования, блокировок правительством). Сейчас мы уже храним все медиафайлы на нашем собственном сервере (чтобы их не могли удалить правообладатели), почти отказались от Cloudflare (потому что он заблокирован для абонентов Казахтелеком), сделали скрипты сбора статистики и комментариев асинхронными (чтобы они не вызывали задержку при загрузке сайта у пользователей из Украины).

    На данный момент от сторонних платформ всё ещё зависит наш круглосуточный музыкальный онлайн-телеканал "RusBronyTV" - он вещает на платформе GoodGame, т.к. перенос его на прямое вещание с нашего сервера для нас не в приоритете. Также используется платформа ВКонтакте для ваших комментариев, чтобы вам не пришлось регистрироваться на нашем сайте.


    Известные неполадки

    Не работают субтитры при просмотре видео

    На слабых ПК, а также на мобильных устройствах, субтитры появляются не сразу после их выбора в меню плеера. Нужно подождать пару минут, чтобы они появились. Медленная инициализация субтитров связана со сложностью скрипта поддержки ASS-субтитров в нашем плеере, мы постараемся упростить его в следующей версии плеера.

    Видео не воспроизводится

    Пользователи операционной системы Windows 7 (напоминаем, что сама Майкрософт прекратила её поддержку в январе 2020 года!), у которых установлены не все обновления Windows Update, столкнулись с проблемой при просмотре видео на нашем сайте. Экспериментальным путём определено, что эта неполадка связана с тем, что Internet Explorer не обновлён до версии 11. Хоть наш сайт и не поддерживается в Internet Explorer, однако Windows так устроена, что поддержку некоторых веб-технологий во всех браузерах обеспечивает именно системное браузерное ядро, коим и является Internet Explorer.

    Внимание! Если раньше у вас воспроизводилось видео с нашего сайта на данном устройстве и вдруг перестало воспроизводиться без видимых причин - это может свидетельствовать о падении бэк-энда на нашем сервере, просьба сообщить об этом любому айтишнику нашего ТО (например, Руслану Насретдинову).

    Видео лагает

    Слабые процессоры не тянут видео в 4K (по состоянию на 23 марта 2020 года - эпизодов в 4К у нас три: "The Last Roundup", "The Perfect Pear", "Sounds of Silence".): изображение при этом "сыпится" на артефакты или проседает FPS. В таком случае необходимо переключить качество на Full-HD (1080p) или ниже.

    Не прогружаются картинки

    Некоторые изображения на нашем сайте - в векторном формате SVG, некоторые - в растровом формате WebP. Браузер Internet Explorer, а также устаревшие версии других браузеров, могут не поддерживать эти форматы. Установи актуальный браузер.










    Смотрите также:   Вернуться назад   Карта сайта   На главную

    Иллюстрации на этой странице:   © Toyminator900