Программистское

Dec 29, 2013 18:02

Вот уже 4 года я развиваю софтину эрливидео. За последний год моя софтина подросла начала кормить уже 8 человек в разных частях света ( Read more... )

fp, erlyvideo, erlang

Leave a comment

olegsmith January 2 2014, 20:00:08 UTC
Тесты имхо самые реальные.
Современная разработка это интеграция, в рамках которой нужно грамотно собрать 50 разных проверенных либ в один продукт, из которых только одна будет твоя. Нужны очень серьезные основания, чтобы писать свой велосипед.

JVM как экосистема - отличное решение для интеграции. Брать на все C/C++ это значит инвестировать 5-10 бюджетов java, при том что не факт что твоя идея выстрелит и не появится более быстрый конкурент. Так что C/C++ нужны только в тех 5% случаев, когда требуется максимально производительный железозависимый код.

Ну и как бы netflix показывает как надо делать prerecorded видеостримминг на много клиентов. API там на java, что впрочем совсем не важно, а важна инфраструктура доставки контента.

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

Reply

levgem January 2 2014, 21:15:22 UTC
Мне нечего тут комментировать. В каждом пункте просто голословные утверждения. Я же говорю только про свой опыт, который я подтверждаю своими деньгами.

Reply

olegsmith January 2 2014, 22:03:39 UTC
Не знаю о чем конкретно ты про голословность, но есть мнение что у netflix https://github.com/Netflix/Hystrix и у twitter https://github.com/nathanmarz/storm денег больше. Опыта в построении высоконагруженных систем надо полагать тоже. Все сплошняком используют JVM.
Обзывать их болтунами я считаю как минимум заносчиво, так что я пожалуй тоже больше комментировать ничего не буду.

Reply

levgem January 2 2014, 22:04:29 UTC
Ну ты болтун совершенный, потому что нетфликс, конечно, стримит видео не сраной джавой.

Reply

kurilka January 3 2014, 06:16:13 UTC
А есть данные чем именно он стримит?

Reply

levgem January 3 2014, 06:18:49 UTC
nginx конечно. Чем ещё файлы с хардов раздавать? Надо вконец упороться что бы это джавой делать.

Reply

olegsmith January 3 2014, 12:40:17 UTC
Как-то мне не удалось донести до тебя простую мысль что стриминг как таковой это маленький кирпичик.
А дом представляет из себя систему, в которой стоят вопросы автоматизированного управления кластерами, в которых решаются задачи интеграции сервисов со всем и вся, автоматической балансировки и прогнозирования нагрузки, распределения данных по хранилищам и обеспечения их когерентности и многого чего еще. И что для этого JVM очень даже подходит.
А стриминг как функция перекладывания из памяти/диска в сокет это конечно важно, но видится не самой большой проблемой. Даже с учетом того что середину бывает сложно найти не пройдя путь с начала.

Что касается нетфликса, то по известным данным там используется http://eyeio.com/how-it-works/ для энкодинга, потом куски видео выкладываются на свое CDN. Ноды их CDN работают на nginx. API и фронтэнд на JVM.
Я не говорил что джава занимается стриммингом. Я говорю что jvm активно используется для построения таких систем и что в них инфраструктура доставки контента имеет первостепенное значение.

А вообще туповатый диалог получается. Ты ссылаешься на тесты где тру-язык и его VM проседает, тебе говорят что это не-тру-тесты, аргументируя опытом и деньгами. При этом своих тру-тестов не показывают ни по числодробилкам ни по шустрости акторов, ну хотя бы на таком уровне http://uberblo.gs/2011/12/scala-akka-and-erlang-actor-benchmarks.

Ты говоришь что в современных высоконагруженных системах стоят вопросы автоматизированного управления кластерами, а тебе говорят что сраная джава с GC плохо видеостримит.

В общем я еще раз подчеркиваю вышеобозначенный тезис "JVM как экосистема - отличное решение для интеграции". Не стоит писать на jvm высокопроизводительные видеоэнкодеры, то же самое, очевидно, касается и erlang. На языках jvm решается задача интеграции библиотек и сервисов.

Было бы интересно увидеть сравнение производительности nginx-rtmp и erlyvideo, а то это как-то некрасиво смотрится http://nginx-rtmp.blogspot.ru/2012/12/funny-news.html

Как сам оцениваешь конкурента? Какие у тебя преимущества? Только по существу.

Reply

levgem January 3 2014, 15:50:17 UTC
Для того, что бы тратить время и отвечать как-то развернуто на твои вопросы, надо что бы я хоть примерно понимал твой уровень. Пока что ты - какой-то безвестный аноним в сети.

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

Reply


Leave a comment

Up