В современном цифровом мире — от глобальных сетей передачи данных до логистических цепочек и систем обработки транзакций — мы постоянно сталкиваемся с необходимостью эффективного управления потоками. Как обеспечить бесперебойную работу интернет-соединений при пиковых нагрузках? Как оптимизировать маршруты доставки товаров в мегаполисе? Как спроектировать call-центр, чтобы клиенты не ждали ответа? Ответы на эти вопросы лежат в области теории массового обслуживания — математической дисциплины, изучающей системы, где заявки (пакеты данных, клиенты, транспортные средства) поступают на обслуживание, образуя очереди.
Читать далееСредство защиты можно установить, настроить и ввести в эксплуатацию. Но как убедиться, что оно действительно блокирует те угрозы, ради которых его внедряли?
Проверять это во время реального инцидента — слишком поздно. Поэтому работу решения оценивают заранее с помощью приемочных испытаний еще до внедрения СЗИ в инфраструктуру. Такие тесты позволяют проверить, как решение ведет себя под нагрузкой и насколько его реальные возможности соответствуют заявленным характеристикам вендора.
Однако сами испытания требуют серьезной подготовки. Каждое средство защиты отличается своими функциями безопасности, архитектурой и набором проверяемых сценариев использования, поэтому тестовый трафик и параметры его воспроизведения приходится каждый раз адаптировать под каждый тестируемый продукт.
При этом удобного открытого инструмента для модификации и воспроизведения такого трафика фактически нет. Коммерческие решения существуют, но зачастую либо оказываются слишком дорогими, либо не покрывают все необходимые сценарии тестирования.
Поэтому специалисты обычно собирают собственный набор утилит. Для изменения IP- и MAC-адресов используется один инструмент, для воспроизведения трафика — другой, для подготовки сценариев — третий. В результате тестировщик работает сразу с несколькими интерфейсами и синтаксисами, и значительная часть времени уходит не на сами испытания, а на переключение между инструментами и ручную обработку результатов.
Мы много раз сталкивались с этой проблемой, поэтому решили разработать Attack Replay — открытую утилиту для воспроизведения и модификации сетевого трафика при тестировании СЗИ. Она объединяет в одном интерфейсе функции нескольких популярных инструментов и автоматизирует рутинные операции, связанные с подготовкой и запуском тестов.
В статье покажем, какие задачи решает Attack Replay, как устроен инструмент и какие результаты он уже дал в реальных проектах. А в конце поделимся ссылкой на GitHub с исходным кодом проекта и набором готовых pcap-файлов.
Читать далееСнаружи всё выглядит рабочим: история оценена, спринт собран, релиз уже стоит в календаре. Но одно число в Jira часто скрывает объём работы, который никто не обсудил, поэтому к концу итерации тестирование внезапно становится узким местом. Разбор семи типовых ошибок поможет понять, где возникает этот разрыв и что менять в процессе, чтобы прогноз меньше зависел от интуиции.
Читать далееПривет Хабр, меня зовут Данила Гуляев, я — методист Linux-решений в АСКОН, и сегодня мы поговорим о развёртывании программных продуктов в условиях предприятий с закрытыми внутренними сетями. Не секрет, что наша активно развивающаяся линейка продуктов для Linux востребована там, где на рабочих местах нет доступа к интернету. Эта статья должна в первую очередь ответить на вопросы технических специалистов таких предприятий.
Читать далееДано: сеть из нескольких сотен АЗС. Визуальный аудит качества обслуживания и сервиса (проверяется соблюдение скриптов, стимулирование дополнительных продаж и установок приложения) покрывает несколько процентов смен, остальное не просматривается. Наш клиент хотел увидеть, что происходит в те моменты, которые упущены из виду. Важно: система должна работать на действующих камерах и микрофонах без всякой доукомплектации. Задача: брать архивные записи, автоматически выделять сессии обслуживания и проверять их по чек-листу.
Кассир у микрофона говорит громко и развернутыми фразами. Клиент отвечает коротко, тихо, иногда просто кивает. Стандартный ASR-пайплайн сталкивается с суровой реальностью: в транскрипции остаётся монолог кассира с пропусками там, где отвечал клиент.
Начали с видео.
Читать далееЯ много работаю с кодинг‑агентами в Claude Code. В какой‑то момент поймал себя на том, что не представляю, на что уходят токены. Счёт в конце месяца есть, а из чего он складывается, непонятно.
Написал небольшую утилиту: она читает то, что Claude Code и так пишет на диск, и раскладывает расходы по статьям. То, что она показала, мне не понравилось.
Читать далее«Дайте агенту доступ к терминалу и файловой системе, и он сам всё сделает» звучит привлекательно ровно до первого случая, когда агент вместо тестового файла отредактировал конфиг продакшена, или переписал файл с ключами API, потому что тот «мешал» задаче. После этого в компании обычно появляется вопрос от безопасника или тимлида: а как мы вообще контролируем, что этот агент делает с кодом?
Проблема в том, что «контроль над агентом» - это не один переключатель в настройках. Это набор независимых механизмов, каждый из которых ограничивает что-то своё: что агент видит, куда может писать, насколько самостоятельно действует и кто проверяет результат. «Разберём эти механизмы по отдельности на примере того, как это устроено в Veai — агенте, который работает и в OpenIDE, и в JetBrains IDE; в статье возьмём плагин для JetBrains IDE, потому что на нём проще показать конкретные экраны и файлы: так проще говорить предметно, а не абстрактно.»
Читать далееРад всех приветствовать, тема на мой взгляд очень интересная! Приступим?
Постановка задачи
Есть короткая аудио запись продолжительностью от 3 до 6 секунд. Требуется найти: откуда она?
Читать далееМультимодельная оркестрация – модная: вместо одной модели дёргаешь несколько разом, а отдельная модель-судья сводит их ответы в один. OpenRouter продаёт это под именем Fusion, Sakana AI – под именем Fugu, и обещание у обоих одно: связка обходит любую одиночную модель. Я решил проверить на реальных рабочих задачах – и первое место действительно занял оркестратор, обойдя и Claude, и GPT, и Gemini поодиночке.
Звучит как слайд из презентации вендора – примерно это и написала про свой Fusion команда OpenRouter. Но у меня остались логи всех 541 API-вызова: токены, деньги, время. И они портят красивую картинку. Например, 68% всех денег внутри Fusion уходит на один-единственный Claude Opus – выходит, за качество я доплачиваю больше чем вдвое, по сути, за обёртку вокруг модели, которую мог вызвать напрямую.
Дальше – по логам: как Fusion устроен изнутри, какие модели он дёргает на самом деле, где оркестрация реально бьёт одиночную модель, где сливает ей, и окупается ли она своих денег и полутора минут на ответ.
Такое можно сделать самомуЭта статья про один баг совместимости, который меня озадачил. Обе стороны честно объявляют версию протокола «dap-18», а байты на проводе не сходятся. Это не туториал по крипте и не показ репозитория - история про то, что строка версии - это не контракт совместимости, и про то, как это чинить, когда наткнулся.
Читать далееПривет, Хабр! На связи команда генеративных моделей в компьютерном зрении. Вместе с другими командами мы делаем мультимодального ассистента Алиса AI. Внутри него мы развиваем несколько вариантов визуальной генерации с помощью отдельной модели Alice AI ART. Два базовых сценария её работы — генерация по тексту (Text‑to‑Image, T2I) и редактирование по картинке с инструкцией (Image‑to‑Image, I2I). Именно о них пойдёт речь.
Всё это время эти сценарии жили как два разных стека: свои базовые модели, свои данные, свои метрики и, честно говоря, своя отдельная боль в разработке и поддержке.
В этом году мы поставили себе цель, которая звучала просто, а на практике оказалась полугодовым приключением: не только подтянуть качество, а сделать одну модель, которая одинаково хорошо умеет и в T2I, и в I2I. Внутри мы называем такой режим unified или просто uni. Вас ждёт рассказ об отдельных экспериментах и наблюдениях, которые помогли нам сделать первый шаг в этом направлении и привели нас к Alice AI ART 2.0, — включая те, которые красиво не сработали (спойлер: их хватало).
Читать далееАрхитектура — это не список функций. Это набор инженерных решений, которые определяют, где система выиграет, где проиграет и почему.
Большинство распределенных хранилищ при заполнении примерно на 95% начинают работать в 2-3 раза медленнее. В наших тестах производительность упала всего на 4–9%. Причина в архитектуре MIND uStor. В этой статье разберем, как устроена модель хранения данных, как организован ввод-вывод и за счет чего система сохраняет производительность даже при высокой утилизации дискового пространства.
В первой статье мы рассмотрели типичные проблемы программно-определяемых хранилищ (SDS): падение производительности по мере заполнения, дополнительные затраты на отказоустойчивость и сложность эксплуатации. Эти ограничения характерны для большинства систем такого класса, поэтому при разработке uStor нам пришлось искать баланс между производительностью, надежностью, эффективностью использования дискового пространства и сложностью реализации.
Здесь разберем, как устроено размещение данных, каким образом кластер сохраняет производительность при заполнении свыше 90%, как работают RF- и EC-пулы, а также почему iSCSI-таргет реализован в пространстве пользователя. Отдельно остановимся на компромиссах, которых потребовала реализация этих решений.
Читать далееПривет, Хабр! Прошло достаточно много времени с написания моей первой статьи о сканере, который принёс мне выплату в багбаунти. Кто не знает, его суть в получении технологий на сайте, после чего проверки на CVE в массовом обличье. Сегодня я бы хотел рассказать о том, как он эволюционировал, какие были исправления и новшества.
Читать далееВ какой-то момент я поймал себя на мысли, что почти никто не меняет раскладку клавиатуры. Не язык, русский или английский, а именно расположение букв. Многие всю жизнь пользуются QWERTY и ЙЦУКЕН и даже не задумываются, что существуют другие варианты.
При этом альтернативных раскладок довольно много. Самыми известными остаются Дворак, Colemak и Диктор.Их создавали, чтобы уменьшить количество движений пальцев и сделать работу за клавиатурой удобнее, но массовыми они так и не стали. Мне кажется, на это есть несколько причин.
Мы не воспринимаем раскладку как настройку
Когда человек покупает компьютер, он может поменять в нем почти все. Он ставит другой браузер, подключает удобную мышку, выбирает свою программу для заметок или редактор кода. Но раскладка почти всегда остается той, которая была установлена в систему с самого начала.
Наверное, это происходит потому, что большинство людей вообще не воспринимают ее как настройку. Кажется, что клавиши расположены именно так просто потому, что так и должно быть. Хотя технически никто не запрещает расположить их совершенно иначе.
Переучиваться тяжело
Если человек уже умеет печатать вслепую, он давно не думает, где находится каждая буква — пальцы сами знают, куда нажимать. Поэтому при переходе на другую раскладку возникает странное и неприятное ощущение. Ты четко знаешь, какую букву нужно напечатать, но палец автоматически нажимает совсем другую клавишу.
Получается, что приходится заново учить не буквы, а сами движения рук. Именно поэтому в первые дни скорость печати обычно сильно падает. Для человека, который весь день работает за компьютером, это довольно серьезная и ощутимая цена.
Читать далееПривет, Хабр! У нас праздник — в стенах Вышки запускаем набор на юбилейный, 20-й поток программы «Менеджмент игровых проектов». И это не тот случай, когда «юбилейный» = «такой же, как прошлый, только с тортиком». Мы разобрали программу до винтиков и собрали заново — под ту реальность, в которой ИИ переворачивает геймдев, а инди-разработчик в одиночку или с небольшой командой может выкатить отличный продукт, который будет приносить доход.
Читать далее
С выходом нейросетей на их современный уровень и широким их распространением все острее встает вопрос кибербезопасности. Больше всего сомнений вызывают агенты, которые могут не просто отвечать на запросы, но и выполнять сложные последовательные действия, в том числе с программированием. По сути, ИИ-агента вроде Claude Code можно обманом заставить запустить у вас на машине чужой код, хотя сам репозиторий будет выглядеть абсолютно чистым. Вот и давайте разберемся, стоит ли этого бояться. Усложнять не будем, но факты рассмотрим.
Читать далееМедийные кампании в финансовом секторе часто решают одну и ту же задачу — повысить знание о бренде. Но рассказать о банке, который участвует в масштабных инфраструктурных проектах страны, с помощью стандартных баннеров непросто.
В этой статье команда Авито Рекламы разбирает кейс Газпромбанка, который решил показать свою роль через интерактивный спецпроект. В результате кампания охватила 25 миллионов пользователей, а исследование Brand Lift зафиксировало рост знания бренда на 15%.
Читать далееХабр, привет! На связи Александр Леонов, ведущий эксперт центра безопасности Positive Technologies и дежурный по самым опасным уязвимостям месяца. Мы с командой аналитиков регулярно смотрим на поток информации об уязвимостях из самых разных источников: бюллетени безопасности вендоров, соцсети, блоги, Telegram-каналы, репозитории кода, базы уязвимостей и эксплойтов. Из этого многообразия мы стараемся выделять самое важное – трендовые уязвимости, которые уже используются в реальных атаках или с высокой вероятностью будут эксплуатироваться в ближайшее время.
С прошлого дайджеста мы добавили еще одну трендовую уязвимость.
Читать далееПохоже, зря я назвал свой канал про ИИ исключительно по фамилии — Бурый. Оказалось, что из-за конкуренции с такими понятиями, как медведь и цвет, меня плохо видно в нейросетях. Пришлось проводить целое исследование, чтобы с этим разобраться.
Читать далееВсем привет. Меня зовут Василий Гуров, я занимаюсь задачами оптимизации в ML Research Lab MAGNIT TECH. В этом материале разберу два промышленных кейса из крупного ритейла – планирование смен сотрудников магазинов и сглаживание нагрузки на распределительные центры.
На поверхности это разные задачи. В первой нужно построить график работы сотрудников по ролям и временным интервалам. Во втором кейсе стоит задача перераспределения логистических потоков так, чтобы снизить пики нагрузки на распределительные центры (РЦ). Но инженерная проблема у них оказалась общей. Прямая time-indexed постановка быстро раздувала модель до сотен тысяч и миллионов бинарных переменных, давала нестабильные рекомендации и плохо укладывалась в SLA.
В этой статье я покажу, как мы решали эту проблему на практике с помощью простого приёма, который должен одним из первых рассматриваться при решении таких объёмных задач. Ключевым оказалось не выбрать самый мощный солвер или алгоритм, а взглянуть на задачу с другой стороны – изменить саму единицу решения. Вместо выбора на уровне слотов, мы стали заранее генерировать валидные кандидаты смен и дальше решали задачу выбора из этих кандидатов. В планировании графиков сотрудников таким кандидатом стала допустимая смена, в сглаживании нагрузки на РЦ – допустимый перенос потока.
Читать далее