Traskalata Posted July 11, 2012 Posted July 11, 2012 Добрый день, Интересует есть ли у кого-то рабочее решение для кэширования Youtube ? Вставить ник Quote
st_re Posted July 11, 2012 Posted July 11, 2012 А че, в гугле забанили ? http://code.google.com/p/youtube-cache/ Проверено, работает (ну чуть напильником пильнуть.) Вставить ник Quote
orlik Posted July 12, 2012 Posted July 12, 2012 Если масштабы позволяют то правильное решение , это GGC Вставить ник Quote
Traskalata Posted July 12, 2012 Author Posted July 12, 2012 (edited) А че, в гугле забанили ? http://code.google.com/p/youtube-cache/ Проверено, работает (ну чуть напильником пильнуть.) Вы уточните пожалуйста что там пилить надо, что оно стало рабочим? Если масштабы позволяют то правильное решение , это GGC Мы не магистральный провайдер. Нафик им с нами связываться? Edited July 12, 2012 by Traskalata Вставить ник Quote
st_re Posted July 12, 2012 Posted July 12, 2012 - А Вы и есть за меня будете ? - Ага © мультик У меня 3.1 сквид и 1.2 нгинкс кеш пиром под сие стоит. Насколько я припоминаю надо еще в список уникальных ключей для хранения добавить рендж (это такой параметр, как и id и itag proxy_store "/usr/local/www/nginx_cache/files/id=$arg_id.itag=$arg_itag"; в примере по ссылке выше а не заголовок.) и algorithm. т.е. в конце перед " добавить .range=$arg_range.algo=$arg_algorithm Ну и везде, где оно есть. Иногда идут запросы без ренджа, по всей видимости это какая то качалка роликов, таким можно сделать внешнюю тулзу для генерации файла без ренджа из кучи с ренджами и наоборот, и добавить ее в середину try_files. но тут програмить надо, мне лень, не стоит оно того. в общем всего то надо правильно заголовки отрезать и приклеивать. В инете валялись скрипты для проигрывания в флеш плеерах с перемоткой, тут почти тоже самое надо делать. Наверное даже без 5 минут готовый найти можно. но тут напильника у меня нет :) . Вставить ник Quote
Traskalata Posted July 13, 2012 Author Posted July 13, 2012 - А Вы и есть за меня будете ? - Ага © мультик У меня 3.1 сквид и 1.2 нгинкс кеш пиром под сие стоит. Насколько я припоминаю надо еще в список уникальных ключей для хранения добавить рендж (это такой параметр, как и id и itag proxy_store "/usr/local/www/nginx_cache/files/id=$arg_id.itag=$arg_itag"; в примере по ссылке выше а не заголовок.) и algorithm. т.е. в конце перед " добавить .range=$arg_range.algo=$arg_algorithm Ну и везде, где оно есть. Иногда идут запросы без ренджа, по всей видимости это какая то качалка роликов, таким можно сделать внешнюю тулзу для генерации файла без ренджа из кучи с ренджами и наоборот, и добавить ее в середину try_files. но тут програмить надо, мне лень, не стоит оно того. в общем всего то надо правильно заголовки отрезать и приклеивать. В инете валялись скрипты для проигрывания в флеш плеерах с перемоткой, тут почти тоже самое надо делать. Наверное даже без 5 минут готовый найти можно. но тут напильника у меня нет :) . Т.е. постоянно дорабатывать и держать руку на пульсе Вставить ник Quote
Ося Posted July 17, 2012 Posted July 17, 2012 (edited) По поводу GGC всё довольно просто, либо вы генерируете достаточно траффика и тогда GGC ставится вам в сеть, либо настраивайте пиринг на ближайшем IXP. Edited November 19, 2014 by Ося Вставить ник Quote
RialCom.ru Posted October 10, 2012 Posted October 10, 2012 а есть у кого по России уже практика применения этого GGC ? Вставить ник Quote
boco Posted October 10, 2012 Posted October 10, 2012 а есть у кого по России уже практика применения этого GGC ? Q: Can I talk about GGC with my customers and peers? Can I include references to GGC in my marketing collateral? A: In short, no. We'll ask your company to consider this agreement and associated activity to be commercially confidential while the Google Global Cache solution remains in beta. Вставить ник Quote
RialCom.ru Posted October 10, 2012 Posted October 10, 2012 А что отвечать товарисчам из прокуратуры например на вопрос блокировки Невинности мусульман? Вставить ник Quote
boco Posted October 11, 2012 Posted October 11, 2012 А что отвечать товарисчам из прокуратуры например на вопрос блокировки Невинности мусульман? Блокировать :) Да, придется весь http гнать через DPI :( Вставить ник Quote
s.lobanov Posted October 11, 2012 Posted October 11, 2012 а что именно блокировать? веб-морда ютуба сейчас редиректится на https (никаких усилий для этого не делал, оно само). конкретный url на конкретном кеше будете резать? Вставить ник Quote
boco Posted October 11, 2012 Posted October 11, 2012 Блокировать урлы, которые укажет прокурор. Насчет https - возможно, вы залогинены в акккаунт гугля. Для анонимусов никакого редиректа нет. Вставить ник Quote
Sonne Posted February 2, 2013 Posted February 2, 2013 Апнем тему. Хочу настроить кеширование youtube. Кто использует - поделитесь информацией как оно работает? Интересует именно схема организации связи и какое количество хитов получается? Самый важный вопрос если видеофайл скачан, кешируется ли он для всех? Или, строго формулируя, генерирует ли гугль постоянный идентификатор файла чтобы потом его можно было воспроизвести всем остальным? Посмотрел это: http://code.google.com/p/youtube-cache/ Как я понял там приведено несколько разных вариантов с использованием SQUID, NGINX, PHP. Я хочу переписать все на чистом NGINX. Вставить ник Quote
Sonne Posted February 2, 2013 Posted February 2, 2013 Гугль выдал контекстную рекламу на недорогие коммерческие железки: http://www.appliansys.com/products/cachebox/index.html Вставить ник Quote
st_re Posted February 2, 2013 Posted February 2, 2013 У меня стоит корпоративный сквид. Ютубный трафик заворачивает в нгинкс. В данной схеме без всеобщего сквида будет сложно все возможные *.c.youtube.com загнать в нгинкс. Все остальное не поменяется. Для загона, наверное, можно поднять свою зону, но это не поможет от 8.8.8.8. Хитов.. до 20 процентов, корпорат со 150Мбит трафика через сквид. Кешится не ролик, а кусок ролика. там есть поле в гет запросе с и до (range). Кеш регулярно грохатеся, все что старше 2-х недель (atime, т.е. небыло обращений на просмотр, а мтайм там вообще с сервера) - не вижу смысла хранить дольше. Соответственно разные файлы под разные разрешения. некоторые клиенты, помоему какие то телефоны, тянут целиком, т.е от и до нету в гет параметре, соответственно это тоже отдельно. в нгинксе собран модуль let, чтобы разливать файлики по поддиректориям (2 символа от sha1 от урла) иначе получается слишком много файлов на директорию, в принципе можно и 2 уровня было сделать. Ну както так... set $zstore "HIT"; location / { set $surl "/id=$arg_id.itag=$arg_itag.range=$arg_range.algo=$arg_algorithm"; let $sd substr( sha1( $surl ) 0 2 ); root /cache/nginx_stores/youtube; try_files "/$sd$surl" @proxy_youtube; } location @proxy_youtube { resolver 127.0.0.1; set $surl "/id=$arg_id.itag=$arg_itag.range=$arg_range.algo=$arg_algorithm"; let $sd substr( sha1( $surl ) 0 2 ); proxy_pass http://$host$request_uri; proxy_temp_path "/cache/nginx_stores/tmp"; proxy_store "/cache/nginx_stores/youtube/$sd$surl"; proxy_set_header X-YouTube-Cache "aaa@aaa.aa"; proxy_set_header Accept "video/*"; proxy_set_header User-Agent "YouTube Cacher (nginx)"; proxy_set_header Accept-Encoding ""; proxy_set_header Accept-Language ""; proxy_set_header Accept-Charset ""; proxy_set_header Cache-Control ""; # proxy_set_header Range ""; proxy_ignore_client_abort off; set $zstore "MISS"; } $zstore пишется в лог, для отчетности. В принципе, с минимальными изменениями, на соседнем порту кешится винапдейт, там в дни выхода апдецйтов 99.9% попадания :) но есть проблема, оно качает кускам с Range в заголовке, а не в параметрах, нгинкс тянет все целиком, и иногда один клиент умудряется запросить 2,3,4,5 итд кусок пока первый файл не вынулся. высавил limit_conn 1 и все, не попавшее в лимит отдаю некешируемо. но клиентов много, оно все равно очень хорошо выходит. .. Пробовал кешить вконтакт. оно конечно кешится, но выхлоп 0.0, 99% мелкие картинки которых тьма, а видео (у меня) почти небыло хитов.. Вставить ник Quote
Ivan_83 Posted February 3, 2013 Posted February 3, 2013 Корпораты ставят WSUS и не парятся, а получают профиты в виде обновлений которые всем остальным не приезжают, и наоборот в отсутствии глупых обновлений которые всем приезжают, плюс отчётность и управляемость. Вставить ник Quote
dmitry_ Posted February 3, 2013 Posted February 3, 2013 В принципе, с минимальными изменениями, на соседнем порту кешится винапдейт, там в дни выхода апдецйтов 99.9% попадания :) но есть проблема, оно качает кускам с Range в заголовке, а не в параметрах, нгинкс тянет все целиком, и иногда один клиент умудряется запросить 2,3,4,5 итд кусок пока первый файл не вынулся. высавил limit_conn 1 и все, не попавшее в лимит отдаю некешируемо. но клиентов много, оно все равно очень хорошо выходит. .. Пробовал кешить вконтакт. оно конечно кешится, но выхлоп 0.0, 99% мелкие картинки которых тьма, а видео (у меня) почти небыло хитов.. А по объему хранилища где лежик кэш видео, как оно растет и примерные его объемы? если трафику в сумме к примеру пару гигабит, то зарулить весь ютубовский трафик (по их AS -> ipset dst) на какую-нибудь кэширующую тачку, то какое предположительно по объему нужно хранилище и по производительности сама машина? Вставить ник Quote
nuclearcat Posted February 3, 2013 Posted February 3, 2013 Кстати, при заполненном кеше, я заметил поведение у некоторых железок - первый раз не кеширует. Второй раз тянет - если контент кешируемый - уже кеширует. Очень даже разумно, чтобы не вытеснять полезное. Огромное значение имеет производительность дисковой подсистемы. Почти все самосборные кеши умирают именно по этому параметру, если траффик превышает сотню мегабит. Решение - быстрые контроллеры SATA + кеш на SSD, либо SAS. И еще, если будет использоваться nginx -очень важно его научить tproxy. Ютуб очень не любит, если запрос на видео и на скрипты приходит с разных адресов, и банально банит IP адреса в конечном счете. По ютубу - я могу собрать примеры запросов, и по косточкам можем их тут разложить. Вставить ник Quote
st_re Posted February 3, 2013 Posted February 3, 2013 ну свои параметры я описал, трафика немного, и т.к. сквид (через ручную/автоматическую настроку), то тпрокси нетреба :) а так да, на малом объеме памяти или меделнных дисках, естественно, воткнет. Еще насчет ютуба. Можно еще заморочиться и склеить куски и резать по запросу. А всус. вещь конечно хорошая, но я виндами не занимаюсь последнее время совсем, а что там в их отделе, мне не интересно, к ним со своим уставом не лазю. Кешить начал исключительно потому что вот оно, готовое решение. Вставить ник Quote
Sonne Posted February 3, 2013 Posted February 3, 2013 st_re У вас squid и nginx на одном IP? nuclearcat, а что если проксировать и видео и скрипты? Проблема только с https? Кстати, у меня клиенты проксируются в небольшой пул реальных IP, ничего не мешает запроксировать так же и кеш-сервер. У гугля хватит ума не банить запросы приходящие с пары-тройки соседних IP? Вставить ник Quote
nuclearcat Posted February 3, 2013 Posted February 3, 2013 зависит от количества запросов. У меня была выделена /24 и по 8 адресов единовременно, и их постоянно приходилось менять. Вставить ник Quote
Sonne Posted February 3, 2013 Posted February 3, 2013 зависит от количества запросов. У меня была выделена /24 и по 8 адресов единовременно, и их постоянно приходилось менять. А что ты делал? Вставить ник Quote
Sonne Posted February 3, 2013 Posted February 3, 2013 А вот что я вижу в GET запросе к ютубу. Оставлю для истории. algorithm:throttle-factor burst:40 cp:U0hUTllQT19KU0NONF9RSlNFOk1JVWR2RkdxOXdE cpn:YF0G-IzPjf34lK4p expire:1359951459 factor:1.25 fexp:927900,910100,916807,904312,916624,920704,912806,922403,922405,929901,913605,925710,906938,920201,913302,919009,911116,910221,901451,919114 id:a9de8eb51a31f55f ip:37.221.176.24 ipbits:8 itag:34 keepalive:yes key:yt1 ms:au mt:1359927553 mv:m newshard:yes range:5345280-7127039 ratebypass:yes signature:8B8468E7FB9226892CC3C62BF3365EF0D7DE0F81.75581EFDF8CF27B1552CA5FAF55961118DEACC60 source:youtube sparams:algorithm,burst,cp,factor,id,ip,ipbits,itag,source,upn,expire sver:3 upn:jJ9y1ewPYYQ Я так понимаю, что мы выдергиваем несколько аргументов и используем их как ключ для имени файла. Интересная штучка - IP, очевидно передается IP адрес источника. Можно что нибудь замутить. st_re, DNS редирект на зону *.bla.bla на микротике делается одной строчкой. Для теста более чем достаточно. У меня вопрос, у вас настроен nginx как кеш пир по этой доке? http://youtube-cache.googlecode.com/svn/trunk/squid/youtube_cache_peer.conf Вставить ник Quote
nuclearcat Posted February 4, 2013 Posted February 4, 2013 А что ты делал? Покупали какое-то решение, платное, довесок к сквиду. Работало мягко говоря хреново. itag кстати разрешение видео/качество. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.