Привет.
Вся функциональность серверной части флайлинка реализована на базе Mongoose
благодаря мангусту вы получаете информацию о качестве видео-файлов
Тест на хабре данного сервера http://habrahabr.ru/post/207460/
показал его отличную производительность - рекомендую!
Нагрузка на мой VPS сейчас выглядит так:
http://82.196.7.135/munin/localdomain/localhost.localdomain/index.html
За все время работы флай-сервера обработано 56 миллионов запросов
нагрузка 10-20 запросов в секунду:
суббота, 25 января 2014 г.
Проблема разрушения базы sqlite
Привет!
Мне периодически присылают письма об ошибке открытия базы
как правило пользователи сообщают о том, что перед этим возникает или отключение питания, или синий экран падения винды
по собранной статистики таких случаев не так много 211 разрушений базы из 133 тыс флаев но они есть.
я пока не знаю как лучше автоматически полечить эту проблему кроме как удаления базы данных и ее повторное создание
тут есть побочный эффект - дополнительный рехэш шары т потеря статистики.
В Google Chrome есть код на детект убитой базы sqlite
chromiumtrunk\src\chrome\browser\diagnostics\sqlite_diagnostics.cc
но детально как они восстанавливают базу я не изучил....
у кого есть какие мысли?
p.s.
пример ошибки присылаемой пользователями:
Мне периодически присылают письма об ошибке открытия базы
как правило пользователи сообщают о том, что перед этим возникает или отключение питания, или синий экран падения винды
по собранной статистики таких случаев не так много 211 разрушений базы из 133 тыс флаев но они есть.
я пока не знаю как лучше автоматически полечить эту проблему кроме как удаления базы данных и ее повторное создание
тут есть побочный эффект - дополнительный рехэш шары т потеря статистики.
В Google Chrome есть код на детект убитой базы sqlite
chromiumtrunk\src\chrome\browser\diagnostics\sqlite_diagnostics.cc
но детально как они восстанавливают базу я не изучил....
у кого есть какие мысли?
p.s.
пример ошибки присылаемой пользователями:
четверг, 23 января 2014 г.
Тест корректного проброса портов
Привет.
С бетки 23 во флайлинк встроена функция тестирования доступности указанных в конфигурации портов со стороны внешнего сервера.
зеленые иконки, будут говорить о корректной настройки сетевой части.
раньше этой функцией занимался скрипт http://flylinkdc.com/test.php
но у него был недостаток - он не поддерживал тест UDP порта, т.к. со стороны сервер нельзя узнать
долетел пакет до клиента или нет.
В текущей реализации это исправлено.
Алгоритм работы такой
1. Клиент шлет на сервер json с указанием портов, какие нужно проверить
{
"CID":"S7IVMBQPT23U3WN2AONV2UTAPL3NGA6GARBXXXA",
"tcp": [ { "port":15234 } ], "udp": [ { "port":16237 }, { "port":22094 } ]
}
2. Сервер получает запрос и запускает нитку выполняющую обратную передачу специального пакета на указанные порты
посылка имеет формат $FLY-TEST-PORT S7IVMBQPT23U3WN2AONV2UTAPL3NGA6GARBXXXA91.192.99.251:15234|
3. Слушающие сокеты на стороне флая обрабатывают такую посылку, сравнивают CID и зажигают лампочки зеленым цветом.
Пока сильно не распространилось - критикуйте реализацию, может что-то криво или не учел чего...а может что-то добавить
бонусом этого запроса является получения вашего внешнего WAN IP
соответственно обращенеи к http://checkip.dyndns.com не требуется.
Следующим шагом для помощи проблем в районе сети будет детект открытости приложения в фаерволе винды а также его автоматическое добавление.
подобное уже реализовано в мастере первичной настройке.
но я нашел немного другую реализацию в гугл-хроме
chromium\home\src_tarball\tarball\chromium\src\third_party\libjingle\source\talk\base\winfirewall.*
попробую ее.
С бетки 23 во флайлинк встроена функция тестирования доступности указанных в конфигурации портов со стороны внешнего сервера.
зеленые иконки, будут говорить о корректной настройки сетевой части.
раньше этой функцией занимался скрипт http://flylinkdc.com/test.php
но у него был недостаток - он не поддерживал тест UDP порта, т.к. со стороны сервер нельзя узнать
долетел пакет до клиента или нет.
В текущей реализации это исправлено.
Алгоритм работы такой
1. Клиент шлет на сервер json с указанием портов, какие нужно проверить
{
"CID":"S7IVMBQPT23U3WN2AONV2UTAPL3NGA6GARBXXXA",
"tcp": [ { "port":15234 } ], "udp": [ { "port":16237 }, { "port":22094 } ]
}
2. Сервер получает запрос и запускает нитку выполняющую обратную передачу специального пакета на указанные порты
посылка имеет формат $FLY-TEST-PORT S7IVMBQPT23U3WN2AONV2UTAPL3NGA6GARBXXXA91.192.99.251:15234|
3. Слушающие сокеты на стороне флая обрабатывают такую посылку, сравнивают CID и зажигают лампочки зеленым цветом.
Пока сильно не распространилось - критикуйте реализацию, может что-то криво или не учел чего...а может что-то добавить
бонусом этого запроса является получения вашего внешнего WAN IP
соответственно обращенеи к http://checkip.dyndns.com не требуется.
Следующим шагом для помощи проблем в районе сети будет детект открытости приложения в фаерволе винды а также его автоматическое добавление.
подобное уже реализовано в мастере первичной настройке.
но я нашел немного другую реализацию в гугл-хроме
chromium\home\src_tarball\tarball\chromium\src\third_party\libjingle\source\talk\base\winfirewall.*
попробую ее.
четверг, 16 января 2014 г.
FlylinkDC++ и проблема: не работает поиск!
Всем привет.
Решил уделить внимание топовому вопросу на всех хабах
"программа ничего не находит!"
Данную тему буду обновлять по мере поступления вопросов и разбора каждой конкретной ситуации.
Для упрощения сбора проблем реализовано:
1. В интерфейсе поиска добавлена функция тестирования UDP используемого для поиска в активном режиме.
2. Добавлена вторая маленькая кнопочка поиска
позволяющая выполнить запрос в пассивном режиме через хаб - должна помочь найти, если пользователь еще не научился включать upnp и не разобрался, как открывать порты руками.
3. Добавлен линк на данную страницу, чтобы пользователь у кого не работает поиск зашел сюда и прочитал инструкции или отписал свою уникальную ситуацию.
Причина 1 - Программный фаервол.
Временно отключаем его - если помогает, значит виноват он и ищем
в инете способ добавления программы в исключения применительно к своей программе.
ссылки на описания основных фаерволов
http://www.dslreports.com/faq/dc/3.1_Software_Firewalls
http://dcplusplus.sourceforge.net/webhelp/faq_unblock.html
(кто найдет лучше и на русском в картинках кидайте ссылки - дополню тему)
Общая рекомендация - все фаерволы имеют режим обучения при старте приложения он спрашивает разрешение для добавления приложения в доверенные - сделайте это и программный фаер не будет мешать.
Решил уделить внимание топовому вопросу на всех хабах
"программа ничего не находит!"
Данную тему буду обновлять по мере поступления вопросов и разбора каждой конкретной ситуации.
Для упрощения сбора проблем реализовано:
1. В интерфейсе поиска добавлена функция тестирования UDP используемого для поиска в активном режиме.
2. Добавлена вторая маленькая кнопочка поиска
позволяющая выполнить запрос в пассивном режиме через хаб - должна помочь найти, если пользователь еще не научился включать upnp и не разобрался, как открывать порты руками.
3. Добавлен линк на данную страницу, чтобы пользователь у кого не работает поиск зашел сюда и прочитал инструкции или отписал свою уникальную ситуацию.
Причина 1 - Программный фаервол.
Временно отключаем его - если помогает, значит виноват он и ищем
в инете способ добавления программы в исключения применительно к своей программе.
ссылки на описания основных фаерволов
http://www.dslreports.com/faq/dc/3.1_Software_Firewalls
http://dcplusplus.sourceforge.net/webhelp/faq_unblock.html
(кто найдет лучше и на русском в картинках кидайте ссылки - дополню тему)
Общая рекомендация - все фаерволы имеют режим обучения при старте приложения он спрашивает разрешение для добавления приложения в доверенные - сделайте это и программный фаер не будет мешать.
воскресенье, 12 января 2014 г.
zyxel keenetic и miniupnpd
Всем привет.
У кого роутер zyxel keenetic и FlylinkDC++,
можете посмотреть в его логах сообщения вида
miniupnpd invalid values xml in NDM respons
Есть жалоба от пользователя, что с FlylinkDC++ r503-beta20-build16359 это началось.
хоть я эту часть вообще не трогал в клиенте... баг подозрительный.
хотелось-бы разобраться в его причинах.
Еще особенность - прошивка на zyxel. выставлена тоже "бета"
У кого роутер zyxel keenetic и FlylinkDC++,
можете посмотреть в его логах сообщения вида
miniupnpd invalid values xml in NDM respons
Есть жалоба от пользователя, что с FlylinkDC++ r503-beta20-build16359 это началось.
хоть я эту часть вообще не трогал в клиенте... баг подозрительный.
хотелось-бы разобраться в его причинах.
Еще особенность - прошивка на zyxel. выставлена тоже "бета"
суббота, 11 января 2014 г.
Вирусные хранилища в сети DC++
Всем привет.
Обращаюсь к тем, кто качает различный софт из DC++
к сожалению в сети на некоторых хабах сидят пользователи(вероятно всего это боты) и раздают вирусы в виде
exe-шников переименованные под популярные программы/кряки.
Если вы скачали подобный исполняемый файл, то перед запуском обязательно проверьте его через https://www.virustotal.com
т.к. многие антивирусы могут реагировать с задержкой.
Я нашел одного такого пользователя и провел тест на файле
MAC OS X Snow Leopard v.10.6.7 Hackintosh Atkos s3v2.exe
TTH - 22HIIKYTW3YM7IH35MZK4YIIYGAZOYHNOMACH5A
Пока скачал и отправил на virustotal юзер уже пропал (возможно он пропадает сразу после того как с него что-то скачают :)
Проверка дала вот такой результат только 8 из 47 нашли в файле заразу.
также обратите внимание что популярный халявный avast промолчал.
Следующий шаг - сделал поиск уже по имени файла т.к. мой первый TTH пропал из сети
скачал другую версию этого файла. на этот раз она оказалась более старой и
ее детектировало большее кол-во антивирусов (35 из 47)
Пока не придумал как защититься от подобного в клиенте...
при открытии файл-листов можно легко детектировать рассадник, но ведь пользователи качают подобное сразу из окна поиска
без загрузки файл-листов... в общем пока думаю.
Если у вас есть идеи как флайлинк может помочь не качать вирусы неподготовленным пользователям
можете отписать соображения в данную тему, или мне на почту. pavel.pimenov@gmail.com
Замеченные особенности подобных вирусных хранилищ
1. Если отрыть файл лист пользователя, то у него в шаре каталог и много (10-30 тыс) exe файлов
с разными именами почти одинакового размера 0.5Мб-1Мб
у некоторых файлов одинаковый TTH
2. Подобные пользователи сидят на большом кол-ве хабов и периодически меняют ники
и скорость от них очень хорошая.
3. Если поискать по имени файла, то TTH и размеры файлов у разных пользователей отличаются.
Обращаюсь к тем, кто качает различный софт из DC++
к сожалению в сети на некоторых хабах сидят пользователи(вероятно всего это боты) и раздают вирусы в виде
exe-шников переименованные под популярные программы/кряки.
Если вы скачали подобный исполняемый файл, то перед запуском обязательно проверьте его через https://www.virustotal.com
т.к. многие антивирусы могут реагировать с задержкой.
Я нашел одного такого пользователя и провел тест на файле
MAC OS X Snow Leopard v.10.6.7 Hackintosh Atkos s3v2.exe
TTH - 22HIIKYTW3YM7IH35MZK4YIIYGAZOYHNOMACH5A
Пока скачал и отправил на virustotal юзер уже пропал (возможно он пропадает сразу после того как с него что-то скачают :)
Проверка дала вот такой результат только 8 из 47 нашли в файле заразу.
также обратите внимание что популярный халявный avast промолчал.
Следующий шаг - сделал поиск уже по имени файла т.к. мой первый TTH пропал из сети
скачал другую версию этого файла. на этот раз она оказалась более старой и
ее детектировало большее кол-во антивирусов (35 из 47)
Пока не придумал как защититься от подобного в клиенте...
при открытии файл-листов можно легко детектировать рассадник, но ведь пользователи качают подобное сразу из окна поиска
без загрузки файл-листов... в общем пока думаю.
Если у вас есть идеи как флайлинк может помочь не качать вирусы неподготовленным пользователям
можете отписать соображения в данную тему, или мне на почту. pavel.pimenov@gmail.com
Замеченные особенности подобных вирусных хранилищ
1. Если отрыть файл лист пользователя, то у него в шаре каталог и много (10-30 тыс) exe файлов
с разными именами почти одинакового размера 0.5Мб-1Мб
у некоторых файлов одинаковый TTH
2. Подобные пользователи сидят на большом кол-ве хабов и периодически меняют ники
и скорость от них очень хорошая.
3. Если поискать по имени файла, то TTH и размеры файлов у разных пользователей отличаются.
Подписаться на:
Сообщения (Atom)