• Какие есть виды угроз веб-серверу?

    inoise
    @inoise
    Solution Architect, AWS Certified, Serverless
    Стоит познакомиться с OWASP)
    Ответ написан
    Комментировать
  • Почему mikrotik стал пускать по ssh без пароля, и пишет что пароль взломан?

    @KriosDezer
    Роутерос 6.20 в 2014 году вышел. Проходной двор щас твой микротик.
    Ответ написан
    1 комментарий
  • Почему mikrotik стал пускать по ssh без пароля, и пишет что пароль взломан?

    @Myr4ik
    Проверь /system note print. Вероятно, там ты найдешь свое сообщение с "DEVICE HACKED..."
    Учитывая, что "На маршрутизаторе умышленно был выставлено простой пароль...", вполне очевидно, что пароль подобрали, удалили его для учетки "admin" и оставили сообщение в разделе "/system note".

    Дело раскрыто)
    Ответ написан
    3 комментария
  • Аналог top только для сети?

    @Odmino
    iptraf
    Iftop
    Nethogs
    Nagios
    Ответ написан
    Комментировать
  • Способствуют ли СУБД экономии ресурса жесткого диска по сравнению с хранением (небольшого количества) данных в json-файлах?

    gbg
    @gbg
    Любые ответы на любые вопросы
    мы должны перезаписать весь файл целиком
    Если смотреть с этой стороны, то да, что JSON, что XML - абсолютно дурацкие форматы, когда речь идет о хранении данных в процессе их обработки - стоит поменять одно поле, и нужно переписывать весь хвост файла, так как все записи имеют переменную длину.

    С другой стороны, СУБД хранят свои данные в так называемых страницах, размер которых, как правило, кратен размеру кластера на жестком диске. Следовательно, изменение одной записи приведет только к перезаписи группы страниц, относящейся к этой записи, но не к перезаписи всей БД.

    Однако, с практической точки зрения, важно смотреть не на износ, а на быстродействие. СУБД, например, хранит числа в двоичном представлении, в то время как JSON, XML и прочая требуют преобразования чисел в строки и наоборот при каждой записи и чтении, что естественно, создает дополнительные тормоза и обогрев атмосферы.

    Проектировать ПО с учетом возможного износа накопителей данных - это уже попытка учесть эффекты третьего порядка (первый порядок - ПО работает с ошибками, второй порядок - работает правильно но медленно, третий - работает быстро и правильно, но создает косвенные затраты на оборудование), что имеет мало практического смысла.

    То есть да, хранить данные в СУБД оптимальнее и быстрее. Еще там есть схема данных, которая проследит за их целостностью, а также функционал фильтрации и агрегации, которые не придется писать заново.
    Ответ написан
    Комментировать
  • Как побороть сонливость и апатию в течение дня?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Перестать играть по ночам :) Нормализовать режим - спать ложиться вечером, а не под утро, вставать утром, а не под вечер :)
    (Эх... у меня никак не получается следовать этому совету...)
    Ответ написан
    1 комментарий
  • Почему дропается база Sqlite на heroku?

    @DollaR84
    На heroku нельзя использовать файлы, так как используется виртуальная файловая система, которая минимум раз в сутки перезапускается. Об этом они сразу предупреждают в описании. На heroku предоставляется база даже в случае бесплатного доступа для обучения, правда всего 5Мб вроде в пакете hobby-dev. Остальные варианты за деньги также можно. Если же вам нужно обязательно использовать файл sqlite - то тогда надо искать другой хостинг, heroku не подойдет.
    Ответ написан
    5 комментариев
  • Как правильно хостить и проигрывать видео в 2020?

    ValdikSS
    @ValdikSS
    То есть получается, что отдача одним файлом и браузерный декод, вышли намного эффективнее чем то, что мы делали через HLS. ¯\_( ツ)_/¯
    Разумеется.
    HLS для VoD используют в двух случаях:
    1. Если нужно, прямо необходимо, автоматически подстраивать качество видео, не выбирая его руками;
    2. Если нужно шифровать куски видео для каждого клиента индивидуально (DRM).

    В остальных случаях, особого резона использовать HLS/DASH нет, т.к. для воспроизведения в браузере он требует media source и javascript-плеер, а обычное HTML5-видео — нет.

    Мы посмотрели кучу стриминговых сервисов, большая часть из них отдавала все свои стримы в формате m3u8, и никаких проблем при этом люди не испытывали. Соответственно назрела куча вопросов о том, как таки стоит делать и в чем могла быть ошибка и как это исправить на будущее.

    Чтобы понять, в чём могла быть ошибка, нужно хотя бы получить какой-то отладочный вывод, или повторить ошибку.
    Во-первых, стандарта HLS «два»: ранний допускает использование контейнера MPEG-TS (.ts), более поздний добавляет поддержку .mp4. MPEG-TS поддерживается лучше, и проще в использовании и на этапе нарезки.

    У меня однажды были точно такие же симптомы, что у вас. Оказалось, что на домене осталась старая DNS A-запись, указывающая на неработающий IP-адрес уже несуществующего сервера. И всё, на удивление, работало, и работало достаточно стабильно, но периодически поток прерывался с ошибками.

    Сложно делать предположения без отладочных данных.

    1) Как правильно хостить файлы на сервере? Нужна ли разбивка при помощи HLS\DASH? Где-то видел что эти технологии нужно использовать в паре, так как каждая из них имеет свою браузерную поддержку.
    Для видеофайлов не требуется какой-то особый подход к размещению на диске. HLS поддерживается только мобильными браузерами (многими, но не всеми), а DASH не поддерживается никакими современными браузерами. Вам в любом случае придётся использовать javascript-плеер, который самостоятельно будет собирать поток из HLS/DASH и воспроизводить через media source, поэтому принципиальной разницы нет. Использовать и HLS, и DASH одновременно точно ни к чему.

    2) Должны ли быть на сервере какие-то специфичные настройки, для эффективной отдачи статического медиа-контента?
    Да не особо. Так как у вас многогигабитный канал, можно попробовать настроить сетевую подсистему (если речь о Linux), а именно увеличить TCP-буферы, буферы отправки и получения, количество conntrack-соединений (может, ошибки соединения возникают по причине лимита conntrack? В dmesg заглядывали?).

    3) Медиа-плеер. Возможно, причина ошибок связана с плеером, который использовали на клиенте?
    Может, безусловно. Плееры содержат достаточно сложный код: парсеры и демуксеры контейнеров, работа с HLS, media source, совместимость с разными браузерами.

    Например, в этом проекте, люди заходили с телевизора, а на tizen flowplayer не работал, от слова совсем.
    Рекомендую попробовать clappr.io — один из немногих, корректно работающих на устаревшем браузере Blackberry.

    4) Шифрование\защита файлов. Как по мне отдача чистых mp4 файлов, небезопасна от слова совсем.
    Зачем нужно защищать ваши файлы, если вы и так их проигрываете? Может, следует подумать о людях и об удобстве просмотра, и предоставить ссылку, которую можно открыть в нормальном видеоплеере, или скачать фильм в виде файла? Не понимаю эту дурацкую тенденцию.
    Ответ написан
    2 комментария
  • Как пакетно скадрировать фотографии по лицу?

    DarkWood
    @DarkWood
    Из бесплатного вот это нашлось: https://sourceforge.net/projects/snfacecrop/
    Ответ написан
    Комментировать
  • INSERT если нет в базе?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    В MySQL нет INSERT ... WHERE.
    Так что UNIQUE индекс и INSERT IGNORE или INSERT ... ON DUPLICATE KEY UPDATE.
    Ответ написан
    Комментировать
  • Какой проект по нейросетям с текстом (лингвистика или вокруг) можно реализовать школьнику?

    sgjurano
    @sgjurano
    Разработчик
    Из известных мне, проще всего можно решить задачу распознавания языка документа путем сравнения частотностей символов (по MSE) с известными из тренировочного корпуса.
    Ответ написан
    Комментировать
  • Иерархия веб разработки и нейронные сети?

    sgjurano
    @sgjurano
    Разработчик
    В классическом понимании веб-сервиса, бэкенд - вся логика процесса, фронтенд - в первую очередь отрисовка пользовательского интерфейса.

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

    Почему нельзя отдавать нейронную сеть на сторону клиента? В первую очередь из-за того, что она может очень немало весить, во вторую из-за сложности вычислений, в третью из-за риска потерять интеллектуальную собственность, которой и является обученная нейросеть.

    Эти аргументы, однако, не являются однозначными ограничениями, вы всегда можете сделать нейросеть во фронтенде, но работать она будет за счёт ресурсов клиента.
    Ответ написан
    4 комментария
  • Какой наиболее производительный поиск по JSON объектам на момент 2020?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Классикой поиска в больших файлах является Sphinx, однако у вас не набор букв, а структурированные данные, по этому я думаю вам будет логичней создать параметризованную модель и перенести все в бд, хотя бы в SQLite (вроде у вас достаточно простая модель данных). Но тут тоже есть нюансы, ну и возможно это вам просто не подходит по ряду причин. Тогда сфинкс для вас лучший вариант, хотя 50 мб файл как-то мелковато, обычно сфинкс ставят для работы с гигабайтными файлами, но будет "на вырост".
    Ответ написан
    2 комментария
  • Возможно ли появление чёрных рынков данных из-за перегруза облачных хранилищ?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Сейчас - коннекты.
    Будет - конвейерная магистраль (поток со слотами для данных).
    Она будет обеспечивать и целостность, и доступы, и QoS с помощью одной лишь своей архитектуры.

    Никакого дефицита ни у кого не будет: одни и те же данные смогут брать из потока сразу все нуждающиеся пользователи.
    Ответ написан
    Комментировать
  • Как сделать чтобы while останавливался на 1 секунду?

    @AlexBergal
    while ($timer = 0) {

    Это не условие, а присвоение.
    Код работает совсем не так как вы сейчас ожидаете.

    Добавьте недостающие !=
    Ответ написан
    Комментировать
  • Атака на базу данных с использованием куки?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Логируйте все запросы с помощью веб-сервера, потом - выявляйте сильно отличающиеся от всех остальных и смотрите логику их обработки по коду. Исправляете.
    Ответ написан
    Комментировать
  • Атака на базу данных с использованием куки?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Стереть скрипт браузерной игры и больше не делать таких глупостей
    Ответ написан
    4 комментария
  • Go пакеты для комфортной работы с json Есть?

    @falconandy
    В некоторых случаях удобно использовать
    для чтения https://github.com/tidwall/gjson
    для записи https://github.com/tidwall/sjson
    Ответ написан
    1 комментарий