• Почему некоторые программисты на GO работают с бд на голом SQL без ORM?

    @hogstaberg
    Вопрос не в задержке от самой ORM, а в том, что бывают запросы, которые, будучи написанными в лоб, выполняются очень-очень долго. Но перепиши его немного хитрее и всё начнёт выполняться за доли секунды. Вот в таких случаях ни сама ORM не напишет второй вариант запроса, ни её постоянное использование не даст вам знаний и навыков чтобы понять что тут можно всё сильно быстрее сделать.
    SQL изначально был разработан как понятный, относительно стандартный (да-да, есть стандарты, которые ряд СУБД даже соблюдает) и структурированный язык-абстракция для выполнения запросов. Зачем на одну абстракцию, решающую проблему выборки данных, натягивать сверху другую абстракцию? Вы можете сказать: "для возможности в какой-то момент переехать на другую СУБД", но тогда мы приходим к ситуации, что ваша ORM наверняка не умеет в классные специфичные фишки каждой СУБД, а генерирует максимально базовые запросы, которые поймёт любая из поддерживаемых СУБД.
    Написано
  • Можно ли запретить пинговать сервер?

    @hogstaberg
    DevMan, не говорит. Я нигде и не утверждал обратного.
  • Можно ли запретить пинговать сервер?

    @hogstaberg
    uuuu, блокировать ICMP целиком - отвратительное решение. Никогда не закрывайте этот протокол целиком. На ipv4 вы поломаете ряд полезных и нужных механизмов, ipv6 в большинстве случаев так вообще просто не будет работать. Хотите не отвечать на icmp echo - заблокируйте icmp type 8 и icmp type 0. Это echo request и echo reply соответственно.
  • Можно ли запретить пинговать сервер?

    @hogstaberg
    fpir, бывает. Например, на истощение канала, когда вам тупо забивают в полку аплинк запросами. Ещё есть ряд суровых маршрутизаторов, имеющих по умолчанию крайне интересные политики очередей и защиты control plane, позволяющие порушить связность по протоколам маршрутизации, буквально завалив мозги пингами. Но это скорее экзотика чем обыденность. Гораздо эффективнее завалить канал амплифицирующимися атаками. А про маршрутизаторы это тонкая специфика, её мало кто знает и достаточно часто адекватные сетевики это заранее прикрывают.
  • Можно ли запретить пинговать сервер?

    @hogstaberg
    Рональд Макдональд
    Нет. Ну то есть он бывает, но легко и быстро отсекается как раз шейперами и файрволлами.

    Каким образом шейпинг или дроп на хосте поможет от ddos на перегрузку канала, если трафик уже пришел на хост?
    Это если скриптописатель идиот. Иначе он тупо прекратит мёртвый пинг на несуществующий адрес (а он будет для него несуществующим, если на сервере настроен DROP ICMP.

    Предположим у скрипта есть задача мониторить доступность хоста по ICMP. Или RTT отслеживать до него. По каким критериям считать этот хост окончательно и бесповоротно переставшим пинговаться навсегда? Этот момент наступает через день? Два? Неделю? Никогда? А если на этом ip живой сайт висит например?

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

    Я уже молчу о том, что любой адекватный программист, умеющий немного в Си и линукс, за полдня накидает вам утилиту, которая через zero-copy механизмы сможет пинговать сотни тысяч хостов одновременно вообще без напряга. Тут становится вообще фиолетово отвечает часть из них или нет.

    Так скриптописатель всё ещё идиот или у него всё-таки может стоять задача пинговать в любом случае?
  • Можно ли запретить пинговать сервер?

    @hogstaberg
    Рональд Макдональд, пинговать, очевидно некий ip адрес.
    Для чего? Для того же, для чего делают это сейчас.
    Вы же понимаете что это не руками кто-то пингует, а какие-то скрипты массово опрашивают адреса постоянно? Скриптам без разницы ответило, не ответило, есть задание - шлём пакеты.
  • Можно ли запретить пинговать сервер?

    @hogstaberg
    Рональд Макдональд, более чем понимаю, это вы зациклились на пинговать=получать echo reply. Человек чётко написал "не помешает людям пинговать". Я, как сетевик, воспринимаю это как "не помешает людям продолжать слать icmp echo-request". Слать и взаправду не помешает, более того слать и будут продолжать коль скоро на этом ip есть ресурс рабочий, просто ответов они не получат.
  • Можно ли запретить пинговать сервер?

    @hogstaberg
    Рональд Макдональд, это никак не помешает долбить автора пакетами как раньше, я уже написал об этом выше.
    Это как дропать DoS атаку на перегрузку канала на атакуемом узле. Пакеты вы подропали, но канал всё равно точно так же занят, потому что наливать трафик вам продолжают.
  • Можно ли запретить пинговать сервер?

    @hogstaberg
    А "веб-программист" таки прав. Закрыть целиком Internet Control Message Protocol - протокол L3 - крайне неразумная идея. Если очень хочется - закрывайте конкретно icmp echo и icmp echo-reply. И да, пинговать это не запретит - пакеты как приходили, так и будут приходить. Просто сервер перестанет отвечать на них и будет дропать на входе. Канал на вход, тем не менее, будет заниматься этими пакетами.
    А ещё никакой провайдер не шейпит и не блокирует пинги, вообще с какой целью он бы такое стал делать?