На чем написан TWITCH?
Являюсь разработчиком в одной компании и пришел заказ который полностью сломал весь коллектив. Нужно написать платформу\сервис подобный твичу, и у меня понятное дело тысячи вопросов по данному заказу, но вот главный из них: На чем написан бекенд твича?
- Вопрос задан более двух лет назад
- 5017 просмотров
1 комментарий
Простой 1 комментарий

profesor08 @profesor08
На чем написан TWITCH?
Деньгами по банковским счетам.
Решения вопроса 2
Веб-макаке не хватит и 640гБ
https://blog.twitch.tv/en/2015/12/18/twitch-engine.
Информация 5-летней давности
Ответ написан более двух лет назад
Нравится 1 1 комментарий
Евгений Запунный @evgzap Автор вопроса

Backend инженер
у меня понятное дело тысячи вопросов по данному заказу, но вот главный из них: На чем написан бекенд твича?
Боюсь, что это не главный вопрос. Скорее второстепенный. Потому что языки имеют второстепенное значение. Куда большее значение имеют программная архитектура приложения и на какой инфраструктуре (on premise/cloud).
В проектах, расчитанных на большую аудиторию пользователей, как правило, задействованы несколько языков программирования.
А какие специалисты есть в вашей команде? Специалисты по обработке видео, хранению данных, девопс, инф. безопасности?
Согласен с Dr. Bacon насчет замечания о компетентности.
Ответ написан более двух лет назад
Нравится 1 7 комментариев
Евгений Запунный @evgzap Автор вопроса
Да я тоже с ним согласен, но наша часть разработчиков подумала что мы можем, я сам понимаю что не можем. но уже все оплачено и как бы выхода назад нет, по этому и такой глупый вопрос
Евгений Запунный @evgzap Автор вопроса
Да и я же не лично буду его писать, это вопрос для общего развития, под этот проект будут наниматься специалисты своего рода занятий.
Евгений Запунный @evgzap Автор вопроса
Dr. Bacon, Та уже все есть, мы решили пойти от противного и грубо говоря переписать нагло технологию чтобы долго не тянуть проект, а так видимо нанимать целый отдел который будет разрабатывать а потом их отпускать вместе с проектом

Евгений Запунный, по началу вам нужно иметь всего несколько многопрофильных специалистов и важно, чтобы они могли уметь работать с проектами под большую аудиторию. Если попытаться составить план MVP, который будет и вправду сильно урезан по сравнению с вашим кумиром-аналогом, то, может, и получится создать.
И только если проект выживет, тогда уже нанимать специалистов узкой специальности.
Не нужно брать команду сразу, это будет просто выброс денег и вы будете долго разруливать кто за что отвечает и прочие проблемы сихронизации команд.
Думаю, что успех зависит от грамотной оценки ваших вохможностей, планирования деталей архитектуры и распределения труда.
Что касается бэкенда, то если брать с учетом роста проекта, то можете взять такие ЯП как Go, C#, Java, Kotlin. В качестве языка-связки для некритичных к скорости вещей могут подойти Ruby, Python и подобные языки.
На чем написан twitch
Ни для кого не секрет что программисты одни из самых высокооплачиваемых специалистов по всему миру. Россия не является исключением. Хорошие программисты здесь тоже ценятся. И если вы заинтересованы в быстро растущей и прибыльной карьере, вы, возможно, захотите, выучится и стать программистом.
Далее идет самое трудное – решить, какой язык программирования нужно выучить чтобы найти работу.
Для того, чтобы помочь вам с этим выбором, я собрал данные с различных сайтов по поиску работы. Хотя это не полный список, но он дает понимание самых востребованных языков программирования (востребованных работодателями).

9 самых востребованных языков программирования 2016 года
SQL

Не удивительно что SQL возглавляет список, так как он применяется практически везде и в широком диапазоне. Технологии баз данных, такие как MySQL, PostgreSQL и Microsoft SQL используются на серверах больших и малых предприятий, больниц, банков, университетов и т.д. Действительно, почти каждый компьютер и человек с доступом к базе данных в конечном счете, касается SQL. Например, все Android телефоны и айфоны имеют доступ к базе данных SQL называемой SQLite и многие мобильные приложения, разработанные в Google, Skype и Dropbox используют ее напрямую.
Java

Техническое сообщество не так давно отпраздновало 20-летний юбилей Java. Это один из наиболее широко принятых языков программирования, используемый около 9 миллионами разработчиков, и работает на 7 млрд устройств по всему миру. Это язык программирования, используемый для разработки всех родных приложений Android. Популярность Java-разработчиков исходит из того, что этот язык имеет долгосрочную совместимость, которая гарантирует, что старые приложения продолжат работать и сейчас и в будущем. Единственная сложность заключается в том, что этот язык достаточно сложен в освоении особенно для новичков.
JavaScript

JavaScript – это еще один из самых популярных и мощных языков программирования, и используется, чтобы оживлять веб-страницы, делая их интерактивными. Например, JavaScript может быть использован для добавления эффектов на веб-страницы, отображения всплывающих сообщений или создания игр с базовым функционалом. Стоит также отметить, что JavaScript — это скриптовый язык Всемирной паутины, который по умолчанию встроен во все основные веб-браузеры, включая Internet Explorer, FireFox и Safari. Почти каждый сайт включает в себя некоторые элементы JavaScript, что добавляет спрос на JavaScript-разработчиков. В последние годы JavaScript также начал использоваться в качестве основы Node.js, серверной технологии, которая помимо всего прочего позволяет осуществлять связь в режиме реального времени.
C#

C# (произносится как Си-Шарп) — это относительно новый язык программирования, разработанный компанией Microsoft для широкого спектра корпоративных приложений, которые работают на .NET Framework. Эволюция C и C++, язык C# простой, современный, безопасный и объектно-ориентированный.
C++
С++ (произносится как Си-плюс-плюс) — это объектно-ориентированный язык программирования общего назначения, основанный на языке «С». Разработан Бьерном Страуструпом в лабораториях Белла, C++ был впервые выпущен в 1983 году. Страуструп поддерживает обширный список приложений, написанных на C++. Список включает в себя Adobe и Microsoft приложения, базы данных MongoDB, большую часть Mac OS/X и это лучший язык для изучения производительности критически важных приложений, таких как «twitch» разработка игр или аудио/видео обработка.
Python

Python — это язык программирования общего назначения, который был назван в честь «Монти Пайтона». Python является простым и легко читаемым (для тех, кто знает английский язык). Это отличный язык для начинающих, и опытных профессионалов. Для Python существует множество курсов программирования, 8 из 10 факультетов информатики обучают кодированию с помощью Python. Из-за использования языка Python в сфере образования, есть много библиотек, созданных для Python, относящиеся к математике, физике, естественной переработки и т.д.
PHP

Созданный датско-канадским программистом Расмусом Лердорфом в 1994 году, PHP не был предназначен, чтобы быть новым языком программирования. Вместо этого он был создан, чтобы служить набором инструментов, помогающим своему создателю поддерживать его личную страницу в интернете (на PHP). Сегодня РНР – это скриптовый язык программирования, выполняемый на сервере, который может быть использован для создания веб-страниц, написанных в HTML формате. РНР очень популярный язык, поскольку его легко использовать начинающим программистам, но он также предлагает множество передовых функций для более опытных.
Ruby on Rails

Подобно Java или языку Си, Ruby является языком программирования общего назначения. Ruby on Rails используется для написания веб-приложений, а также обеспечивает их интеграцию с веб-сервером и базой данных. Ruby on Rails имеет много положительных качеств, в том числе быстрое развитие и широкий выбор библиотек. Он используется многими компаниями, начиная от небольших стартапов до крупных предприятий. Hulu, Twitter, Github и Living Social используют Ruby on Rails по крайней мере для одного из своих веб-приложений.
iOS/Swift

В 2014 году Apple решили изобрести свой собственный язык программирования. Результатом стал Swift – это новый язык программирования для iOS и OS X для разработчиков. Разработчики утверждают, что многие части Swift знакомы им по опыту работы на C ++ и Objective-C. Многие компании на западе, в том числе American Airlines, LinkedIn и Duolingo, перешли на Swift, и в ближайшие годы этот язык будет набирать все больше популярности.
Любой мастер имеет полный набор инструментов, каждый из которых подходит для определенной задачи. Также и с программированием, никогда не будет только одного языка, и каждый язык будет развиваться и улучшаться с течением времени, чтобы идти в ногу с инновациями.
Именно поэтому, если вы заинтересованы в том, чтобы стать разработчиком, важно хорошо разбираться в нескольких языках программирования, так что бы вы могли быть универсальным и быстро адаптируемым, и продолжали, изучить языки на протяжении всей вашей карьеры.
На чем был написан сайт twitch.com?

Что вам даст эта информация? Понятия написан на node.js нет, есть стеки технологий, которые используется. Платформа, фреймворки, паттерны проектирования, способы распределения нагрузки и т.п. У всех эти стеки разные.
Более того, абсолютно любую задачу можно решить используя разные наборы технологий. По сути выбор стека зависит всего лишь от опыта людей, которые начинают писать сервис. Со временем, по мере развития проекта, этот набор технологий могут частично менять на более подходящий вот и все.
Так что если вы хотите написать свой сервис, пишите на том языке и с помощью тех технологий, которые знаете лучше всего.
Ответ написан более трёх лет назад
Нравится 7 5 комментариев
yativ_sobb @yativ_sobb Автор вопроса
Я сам пишу на php, но мне нужно webrtc для написания прямой трансляций с веб-камеры, я читал что для этого нужно node.js! Через сокеты. Вот и спрашиваю!

также технологии могут менятся, если компанию покупает другая компания, которая имеет свой стек технологий

yativ_sobb: сокеты это не обязательно node.js, их реализация есть под все популярные языки. Вот сходу нашел демку с сервером на PHP: https://github.com/pusher-community/pusher-webrtc-.
yativ_sobb @yativ_sobb Автор вопроса
Но а если транслировать на большую аудиторию, что лучше всего использовать, или это зависит от сервера?
Правила в отношении музыки
Twitch ценит работу композиторов, музыкантов и других креативных стримеров. Как компания, стремящаяся поддерживать авторов, мы уважаем (и просим наших пользователей уважать) права на интеллектуальную собственность создателей и правообладателей музыкальных произведений.
Многие из вас хотят знать, какие типы музыкальных материалов можно свободно размещать на Twitch. Ниже мы приводим подробную информацию о том, какую музыку вы можете использовать.
- Использование музыки на Twitch
- Случаи использования музыки
- Использование музыки в соответствии с законодательством
- Как это затрагивает вас
Использование музыки на Twitch
Основное правило заключается в том, что для использования музыки в своем канале Twitch у вас должно быть соответствующее право или разрешение. В случае несанкционированного использования музыки правообладатель может отправить запрос на удаление в соответствии с Законом об авторском праве в цифровую эпоху («DMCA»), аналогичными законами или в рамках отдельного процесса, предусмотренного договором. Если правообладатель отправит в Twitch запрос на удаление материалов, опубликованных в вашем канале Twitch, в отношении вашего канала могут быть применены дисциплинарные меры, вплоть до блокировки.
Обратите внимание, что подписка на стриминговый музыкальный сервис либо покупка компакт-диска или записи MP3 обычно не предоставляют вам права на размещение такой музыки на Twitch. Как правило, в таком случае вы получаете только личную лицензию на доступ к контенту для частного воспроизведения. Рекомендуем ознакомиться с условиями использования соответствующего сервиса и другими применимыми юридическими документами, прежде чем добавлять музыку с такого сервиса в свои трансляции Twitch.
Случаи использования музыки
Ниже описаны знакомые вам сценарии использования музыкального контента с информацией о том, можно ли использовать такой контент на Twitch и как это делать.
Вот некоторые виды музыкального контента, который можно добавлять в трансляции Twitch или в материалы по запросу (например, VOD и клипы):
- Музыка, которая принадлежит вам, — оригинальная музыка, которая была написана и записана (или исполнена) вами и в отношении которой вы владеете всеми необходимыми правами для ее размещения на Twitch, в том числе правами на запись, исполнение, а также правами на саму музыку и текст песни. Помните, что если у вас есть договорные отношения с организацией, которая владеет правами на создаваемый вами контент (например, со звукозаписывающей или издательской компанией), вы должны убедиться, что не нарушаете их при размещении такой музыки на Twitch.
- Музыка, на которую у вас есть лицензия, — защищенная авторскими правами музыка, которая частично или полностью принадлежит третьей стороне и в отношении которой вы владеете лицензией от всех соответствующих правообладателей для ее размещения на Twitch. Как указано выше, если вы собираетесь использовать стриминговый музыкальный сервис, ознакомьтесь с условиями использования и другими применимыми юридическими документами, чтобы понять, какие права этот сервис вам предоставляет.
Вот некоторые типы музыкального контента, который вы не можете добавлять в трансляции Twitch или видеозаписи (например, VOD и клипы):
- Трансляция в режиме радиостанции — аудиотрансляции без живого видеоряда, состоящие из записанных музыкальных произведений, если у вас нет соответствующих прав на трансляцию такой музыки на Twitch и полученного ранее письменного разрешения от Twitch, предусматривающего исключение из этого правила для вашего канала.
- Диджейский сет — воспроизведение и/или микширование записанных музыкальных треков, которые не принадлежат вам или на размещение которых на Twitch у вас нет соответствующей лицензии.
- Исполнение песен с караоке — исполнение или воспроизведение песен с караоке, которые не принадлежат вам или на размещение которых на Twitch у вас нет соответствующей лицензии.
- Исполнение номеров под фонограмму — изображение пантомимы, пение или имитация пения под музыку, которой вы не владеете и на размещение которой на Twitch у вас нет соответствующей лицензии.
- Визуальное представление музыки — тексты песен, нотная запись, табулатура или другое визуальное представление защищенной авторскими правами музыки, за исключением музыки, которой вы владеете или на размещение которой на Twitch у вас есть соответствующая лицензия.
- Исполнение кавер-версий — исполнение песни, которая принадлежит другому лицу, за исключением живого исполнения в вашем стриме Twitch. Если вы исполняете кавер-версию на своей прямой трансляции Twitch, постарайтесь воспроизвести ее в таком виде, как было задумано композитором, создав при этом все аудиоэлементы самостоятельно, без использования инструментальных треков, музыкальных записей или других записанных элементов, которые принадлежат другим лицам.
Использование музыки в соответствии с законодательством
Наше сообщество — это место, где стримеры могут находить необычные, креативные, а иногда и принципиально новые способы самовыражения. Мы считаем важным не только поделиться приведенными выше правилами, но и отметить, что не все музыкальные произведения охраняются авторским правом и что не все неправомерные случаи использования такой музыки являются нарушением законодательства. Например, это могут быть композиции, находящиеся в открытом доступе, или музыка, которая защищена авторскими правами, но разрешена для использования в соответствии с законами о правомерном использовании либо аналогичными нормативными актами за пределами США. Рекомендуем ознакомиться с правилами встречного уведомления и отказа от жалоб в наших Положениях DMCA, если вы считаете, что получили уведомление от правообладателя с требованием удалить материалы вследствие ошибки или неправильной идентификации.
Как это затрагивает вас
Если вы нарушите изложенные в этом документе требования, в отношении вашего контента может поступить уведомление о нарушении прав от правообладателей музыки в соответствии с нашими Положениями DMCA и/или применены штрафы в соответствии с нашим порядком рассмотрения жалоб правообладателей музыки (так называемым «порядком рассмотрения жалоб на музыку»). Далее приведена краткая информация об этих двух процедурах, подробные сведения см. в Положениях DMCA и на странице справки, посвященной рассмотрению жалоб на музыку.
Чтобы исключить создание видеозаписей, содержащих защищенный авторским правом звук, службы Twitch проверяют его наличие в VOD и клипах авторов. Ниже приведен краткий обзор этой системы, подробнее о ней можно узнать в статье справки об отключении звука.
Применение DMCA
Согласно закону DMCA и аналогичным законам в других странах, такие службы, как Twitch, должны определенным образом реагировать на заявления правообладателей о нарушении авторских прав на сервисе. Положения Twitch определяют порядок того, как Twitch получает уведомления о нарушениях от правообладателей, разрешает авторам оспаривать такие жалобы, удаляет предположительно нарушающие авторское право материалы и выдает предупреждения в соответствии с политикой в отношении повторных нарушений. Этот порядок применяется ко всем типам защищенного авторским правом контента, в том числе и к музыке. Подробные сведения приведены в Положениях DMCA.
Порядок рассмотрения жалоб на музыку
Соглашения Twitch с определенными правообладателями музыки регламентируют использование защищенных авторским правом материалов на нашем сервисе. Эти соглашения предусматривают особый процесс подачи и обработки жалоб, который мы называем порядком рассмотрения жалоб на музыку. Он более лоялен к авторам, которые случайно или непреднамеренно используют защищенные авторским правом материалы таких правообладателей на своих каналах Twitch. В случае грубых нарушений за первое несанкционированное использование материалов этих правообладателей Twitch выдает авторам предупреждение, а за последующие подобные нарушения принимает более серьезные меры. Twitch также может блокировать прямые трансляции и/или удалять видеозаписи, которые содержат охраняемую авторским правом музыку в нарушение правил. Подробные сведения приведены в статье о порядке рассмотрения жалоб на музыку.
Автоматическое отключение звука или удаление записанных видео
Кроме того, Twitch может отключить звук в VOD и удалить клипы, если наша автоматизированная система фильтрации контента обнаружит в них охраняемую авторским правом музыку. Если у вас есть необходимые права на использование музыки или другого защищенного авторским правом звука в своих VOD на Twitch, мы разрешим вам использовать этот звук в VOD. Чтобы узнать, как обжаловать отключение звука, ознакомьтесь с этой статьей справки.