Эта «атака» такая же как и на оставленную незапертой машину. В нее сели посторонние люди и начали нажимать на все кнопки а потом еще и жить там остались.
Ну серьезно, вы же наверное запираете квартиру и машину когда уходите? И ключ даже с собой забираете? Почему здесь то вы оставили машину (redis) на оживленной улице (интернет) незапертой (без пароля)?
В США и СССР в 1970-ых если бы кто-то сказал, что 64-битный процессор с тактовой частотой 3 ГГц будет по размером меньше пачки сигарет, его сдали бы в дурку, по обе стороны океана.
Нет за это бы не сдали - мечтать не запрещалось. А вот если при этом утверждать, что мощности компьютера с таким процессором будет едва хватать на просмотр видео с котиками, то таки да
Вариант, что при обновлении инфраструктуры, просто потеряли эту настройку cdn не рассматривается? Вспомнят - вернут как было (даже если нет - это не имеет никакого значения)
У всех все по-разному. Я когда устраивался на нынешнее место, в моем городе не было нашего офиса и была безальтернативная полная удаленка. Сейчас офис есть, но в нем нет ни одного человека из моей команды поэтому смысла мне туда ходить нет (при этом офис грубо говоря через дорогу). Иногда езжу поработать с командой недельку в мск и/или спб - это само по себе прикольно, но заметил что моя производительность в эти дни ниже - что в свою очередь видимо говорит о том что из дома я хронически перерабатываю
Подобные «уязвимости» являются таковыми только внутри виртуальных машин, работающих у хостера или облачного провайдера , т к потенциально могут позволить клиентам получить секреты других клиентов или , что хуже, самого провайдера. У apple только консьюмерские устройства, там если к вам попал (любой) вредоносный код - цель уже достигнута: шифруй данные, вымогай выкуп
Много написано про организацию бд, но ни слова про бэкапы, надеюсь они у вас уже делаются )
Также непонятно как накатываются миграции в таком сетапе (база под каждого клиента, один бэкенд на всех) и как откатываются в случае, если что-то пошло сильно не так при обновлении
Для packer можно писать конфиги в формате hcl и это намного удобнее и читаемее (и привычнее для пользователей terraform)
да и hashicorp давно рекомендует писать hcl конфиги
As of version 1.7.0, HCL2 is the preferred way to write Packer templates. You can use the hcl2_upgrade command to transition your existing Packer JSON template to HCL2
range итерирует структуры, которые описаны в статье (слайс/массив, мапа, строка), вне цикла использовать его не получится - он часть синтаксиса. При этом это не "синтаксический сахар" к более длинным конструкциям: заменить его на на что-то другое можно для строк и массивов, но не для мап - т.к. отсутствуют публичные методы для получения итератора мапы.
В этом примере удаление элементов из map во время итерации небезопасно и может привести к ошибкам во время выполнения или неожиданному поведению, поскольку сама map изменяется во время итерации.
Это откуда такая информация? Если почитать практику и спеки, везде написано, что это безопасно, ну или наоборот нигде не написано что так делать нельзя. Конкурирующий доступ запрещен да. Модификация мапы в одном потоке разрешена. Про range по мапе в спеке написано, что удаленные элементы, до которых вы еще не дошли не будут пройдены в цикле (что звучит логично), а добавленные могут а могут и не быть пройдены (т.к. порядок не гарантирован)
Обратите внимание, что Start вызывает подфункции с помощью инструкции CALLX8, которая в отличии от обычного Immediate-версии CALL8
Строго наоборот: call8 это Immediate pc relative call
Callx8 - indirect call по адресу в регистре
И в вашем листинге это так и есть: start вызывает функции используя call8 относительно счетчика инструкций, а вот «сисколы» везде вызываются через callx8, его адрес вы везде продергиваете через стек (а изначально его передает в start загрузчик и это абсолютный адрес)
Я тоже фанат hashicorp (возможно даже их агент влияния) но новый проект на nomad в 2023 это необдуманное решение. Kubernetes объективно победил. Взять хотябы публичные облака. Я что-то не слышал про managed nomad в них, а вот kubernetes есть везде.
Тудаже и consul connect - тоже не самый мейнстрим мягко говоря.
просто представьте что с этим после вас будут делать хм… не фанаты hashicorp
Юнит тесты нужны, только они очень дорогие (кто бы что не говорил). У меня затраты по времени на них получаются почти всегда больше чем на сам код. Но они реально помогают найти ошибки во всяких краевых случаях, а иногда и сходу. Тесты нужно писать самому исходя из своих ожиданий от того как должна работать программа (а не тупо чтобы получить покрытие). А чтобы не было больно при рефакторинге - ну надо писать тесты только на публичные методы, а не на детали реализации, хоть и есть такой соблазн иногда
В системных требованиях же четко написано, что нужна видеокарта, а у него intel )
А если серьезно, интел неспешно движется к цели стать производителем видеокарт и потеснить этих двух. Я думаю в течение пары лет, повода смеяться над ними уже не будет
Смысл существования TV как раз в том, что он позволяет соединятся с компьютером за NAT или firewall. Зачем использовать эту поделку для прямого подключения вообще непонятно (и наверное даже страшно), особенно на Windows где есть нативный и быстрый RDP из коробки
Не хотел отвечать тк холиварно, но ваше утверждение про tiobe неверно: в марте 23 golang впервые вошел в 10-ку на tiobe. Ну и сам индекс tiobe такой себе показатель. Предлагаю в качестве альтернативы, например, посмотреть стату github там есть графики по годам и видно развитие популярности наглядно. Открытые вакансии это тоже подтверждают: если C (не c++), то либо что-то системное, либо embed разработка - полистайте hh
А это да, я же просто отвечал на вопрос mobi, почему в статье отвергается вариант с вложенными условиями.
Статанализаторы обычно настраиваются на какую-то разумную вложенность (которая в примере mobi вполне допустима и даже наверно с запасом в 80 символов помещается). А так-то я как раз не согласен с тем как в статье это объявляется злом которое хуже goto. Также как не согласен, что разбиение на более мелкие функции тоже хуже goto (причем еще и дан специально кривой пример чтобы это продемонстрировать). Обычно это наоборот делает код более читаемым, а оверхеда не дает тк мелкие функции заинлайнятся
Эта «атака» такая же как и на оставленную незапертой машину. В нее сели посторонние люди и начали нажимать на все кнопки а потом еще и жить там остались.
Ну серьезно, вы же наверное запираете квартиру и машину когда уходите? И ключ даже с собой забираете? Почему здесь то вы оставили машину (redis) на оживленной улице (интернет) незапертой (без пароля)?
Нет за это бы не сдали - мечтать не запрещалось. А вот если при этом утверждать, что мощности компьютера с таким процессором будет едва хватать на просмотр видео с котиками, то таки да
2.88 насколько я помню можно было и без дырочек писать - была такая шикарная программа (драйвер и форматировщик) pu_1700
Ну правильно, что это у пользователей 16 ядерные процессоры и мощные gpu простаивают - пусть «пользу» приносят
Вариант, что при обновлении инфраструктуры, просто потеряли эту настройку cdn не рассматривается? Вспомнят - вернут как было (даже если нет - это не имеет никакого значения)
про «не допустить» смешно да
У всех все по-разному. Я когда устраивался на нынешнее место, в моем городе не было нашего офиса и была безальтернативная полная удаленка. Сейчас офис есть, но в нем нет ни одного человека из моей команды поэтому смысла мне туда ходить нет (при этом офис грубо говоря через дорогу). Иногда езжу поработать с командой недельку в мск и/или спб - это само по себе прикольно, но заметил что моя производительность в эти дни ниже - что в свою очередь видимо говорит о том что из дома я хронически перерабатываю
Какой беспощадный перевод. «Понимание списка» - list comprehension - переводить это было не нужно…
Подобные «уязвимости» являются таковыми только внутри виртуальных машин, работающих у хостера или облачного провайдера , т к потенциально могут позволить клиентам получить секреты других клиентов или , что хуже, самого провайдера. У apple только консьюмерские устройства, там если к вам попал (любой) вредоносный код - цель уже достигнута: шифруй данные, вымогай выкуп
Спасибо за честный рассказ, было интересно.
Много написано про организацию бд, но ни слова про бэкапы, надеюсь они у вас уже делаются )
Также непонятно как накатываются миграции в таком сетапе (база под каждого клиента, один бэкенд на всех) и как откатываются в случае, если что-то пошло сильно не так при обновлении
Для packer можно писать конфиги в формате hcl и это намного удобнее и читаемее (и привычнее для пользователей terraform)
да и hashicorp давно рекомендует писать hcl конфиги
range итерирует структуры, которые описаны в статье (слайс/массив, мапа, строка), вне цикла использовать его не получится - он часть синтаксиса. При этом это не "синтаксический сахар" к более длинным конструкциям: заменить его на на что-то другое можно для строк и массивов, но не для мап - т.к. отсутствуют публичные методы для получения итератора мапы.
исходники его тут кстати https://github.com/golang/go/blob/master/src/cmd/compile/internal/walk/range.go
Это откуда такая информация? Если почитать практику и спеки, везде написано, что это безопасно, ну или наоборот нигде не написано что так делать нельзя. Конкурирующий доступ запрещен да. Модификация мапы в одном потоке разрешена. Про range по мапе в спеке написано, что удаленные элементы, до которых вы еще не дошли не будут пройдены в цикле (что звучит логично), а добавленные могут а могут и не быть пройдены (т.к. порядок не гарантирован)
Строго наоборот: call8 это Immediate pc relative call
Callx8 - indirect call по адресу в регистре
И в вашем листинге это так и есть: start вызывает функции используя call8 относительно счетчика инструкций, а вот «сисколы» везде вызываются через callx8, его адрес вы везде продергиваете через стек (а изначально его передает в start загрузчик и это абсолютный адрес)
Я тоже фанат hashicorp (возможно даже их агент влияния) но новый проект на nomad в 2023 это необдуманное решение. Kubernetes объективно победил. Взять хотябы публичные облака. Я что-то не слышал про managed nomad в них, а вот kubernetes есть везде.
Тудаже и consul connect - тоже не самый мейнстрим мягко говоря.
просто представьте что с этим после вас будут делать хм… не фанаты hashicorp
Юнит тесты нужны, только они очень дорогие (кто бы что не говорил). У меня затраты по времени на них получаются почти всегда больше чем на сам код. Но они реально помогают найти ошибки во всяких краевых случаях, а иногда и сходу. Тесты нужно писать самому исходя из своих ожиданий от того как должна работать программа (а не тупо чтобы получить покрытие). А чтобы не было больно при рефакторинге - ну надо писать тесты только на публичные методы, а не на детали реализации, хоть и есть такой соблазн иногда
В системных требованиях же четко написано, что нужна видеокарта, а у него intel )
А если серьезно, интел неспешно движется к цели стать производителем видеокарт и потеснить этих двух. Я думаю в течение пары лет, повода смеяться над ними уже не будет
Мой вариант: вообще ничего не надо провиженить через ssh.
VM деплоятся из готового неизменяемого образа используя terraform
образы собираются с помощью packer
Обновление - пересоздание vm из нового образа
Подход называется immutable infrastructure
профит - гарантия полной идентичности хостов и отсутствие ошибок операторов (тик никто ничего не «админит»)
кроме того старт vm из готового образа значительно быстрее чем прогон плейбука (если это настоящий плейбук а не школьный пример)
Смысл существования TV как раз в том, что он позволяет соединятся с компьютером за NAT или firewall. Зачем использовать эту поделку для прямого подключения вообще непонятно (и наверное даже страшно), особенно на Windows где есть нативный и быстрый RDP из коробки
Не хотел отвечать тк холиварно, но ваше утверждение про tiobe неверно: в марте 23 golang впервые вошел в 10-ку на tiobe. Ну и сам индекс tiobe такой себе показатель. Предлагаю в качестве альтернативы, например, посмотреть стату github там есть графики по годам и видно развитие популярности наглядно. Открытые вакансии это тоже подтверждают: если C (не c++), то либо что-то системное, либо embed разработка - полистайте hh
А это да, я же просто отвечал на вопрос mobi, почему в статье отвергается вариант с вложенными условиями.
Статанализаторы обычно настраиваются на какую-то разумную вложенность (которая в примере mobi вполне допустима и даже наверно с запасом в 80 символов помещается). А так-то я как раз не согласен с тем как в статье это объявляется злом которое хуже goto. Также как не согласен, что разбиение на более мелкие функции тоже хуже goto (причем еще и дан специально кривой пример чтобы это продемонстрировать). Обычно это наоборот делает код более читаемым, а оверхеда не дает тк мелкие функции заинлайнятся