Рубрика «race condition»
Рукожопатие Linux
2026-11-05 в 13:08, admin, рубрики: CVE-2026-98432, llm, race condition, tcp, use-after-free, эксплойт, ядро LinuxДва клика — одна оплата: Форсаж вокруг платежного шлюза
2026-10-31 в 8:20, admin, рубрики: .net, advisory lock, postgresql, race condition, блокировки, идемпотентность, конкурентность, микросервисы, платежный шлюзПредисловие
Как‑то раз мне пришлось переносить с монолитного легаси в новенький микросервис интеграцию с платежным провайдером.
Изучив старый код, я понял, что так дело не пойдет. Два клика по «Оплатить» — два запроса в провайдер. Два Check — два финансовых документа по одной оплате. Два Cancel — два Reverse. В монолите это еще как‑то жило, а в микросервисе, который запускается в двух репликах, локальный SemaphoreSlim вообще перестал что‑либо гарантировать.
Гонка при создании справочников в 1С: как MD5 от ключа заменил блокировки на миграции 28 тысяч позиций
2026-10-26 в 13:21, admin, рубрики: 1С, GUID, race condition, идемпотентность, миграция, обмен данными, управляемые блокировкиБыла миграция из SAP в 1С:ERP. Нужно было разово загрузить около 28 тысяч карточек номенклатуры. Саму номенклатуру мы контролировали очень внимательно, а задвоилось то, на что смотрели меньше всего: номенклатурные группы, виды номенклатуры и другие зависимые справочники, которые создавались по ходу загрузки. Ниже разбор, почему так вышло, почему управляемые блокировки не спасли и как в итоге решили задачу без блокировок вообще.
Весь код в статье — пример. Он упрощён и показывает подход, а не копирует боевую базу. Имена регистров, реквизитов и служебных процедур условные.
Вскрытие ноу‑код сметы за 500$ или как купить «АИ — ассистента» который сожрёт весь бюджет заказчика
2026-08-18 в 9:16, admin, рубрики: amocrm, debounce, n8n, race condition, redis, автоматизация бизнеса, вебхуки, ии-агенты, искусственный интеллект, конструкторы ботов«...Давайте я сделаю, на моих токенах потестите...»
Привет! Я разработчик из Минска (работаю официально, в статусе НПД). Занимаюсь автоматизацией на связке Self‑Hosted n8n + Redis. Внедряю автономных ИИ‑агентов для мессенджеров и связываю их с amoCRM.
Дисклеймер: в статье упоминается Meta: организация признана террористической и запрещена в РФ)
Поделюсь, как говорится, «мясом» из своей практики. В статье я максимально постараюсь отразить и технический абсурд, плавно переходящий в явное кидалово от инфомошенников.
Во‑первых — Читать полностью »
Я продал одно место на концерт 20 раз. Разбираемся, как правильно защититься от race condition в Spring Boot
2026-07-27 в 15:20, admin, рубрики: hibernate, java, optimistic locking, pessimistic locking, race condition, redis, spring boot, spring data jpaОднажды я решил проверить на практике байку, которую слышал на десятке собеседований: «у нас на проде было такое‑то место продано дважды, потому что…». Оказалось, воспроизвести это не просто легко — это воспроизводится настолько надёжно и настолько наглядно, что грех было не довести дело до конца: взять систему бронирования мест, специально сломать её, замерить, насколько плохо, а потом последовательно починить тремя разными способами — и честно сравнить, что каждый из них стоит по производительности.
Спойлер: один из результатов оказался прямо противоположным тому, что я ожидал увидеть.
Читать полностью »
Idempotency keys: 5 граблей, которые мы поймали на проде
2026-05-27 в 1:32, admin, рубрики: .net, api, C#, idempotency, intent-key, race condition, грабли, идемпотентность, платежи, распределенные системыПятница, 23:47. PagerDuty: “Платёж AmEx, провайдер вернул 5xx три раза подряд, билеты не зарезервированы.” Открываю логи – действительно 3 ответа провайдера с 5xx, ни одной успешной транзакции по нашей базе. Закрываю как временный сбой на стороне провайдера, пишу короткую сводку в дежурный чат и иду досматривать. Через 40 минут второй алерт – уже от ночной поддержки: клиент прислал скрин выписки, 3 списания подряд за одну бронь. У клиента рейс через 6 часов, ему нужна действующая бронь и подтверждение, что он завтра нормально улетит, а не тикет в поддержку.
Нагрузочное тестирование с нуля: наши грабли, гонка за токеном и рабочий чек-лист
2026-03-23 в 15:15, admin, рубрики: memcached, race condition, анализ работы web сервисов, гонка процессов, кейс нагрузочного тестирования, кэширование данных, метрики, нагрузочное тестирование, оптимизация производительности, чек-лист нагрузочного тестированияПривет!
Мы команда «Исходного кода“ и уже полгода системно занимаемся нагрузочным тестированием (НТ). Раньше такие проверки были от случая к случаю — оттуда и взяли базу знаний. Сегодня хотим поделиться историей одного показательного фейла, который заставил нас пересмотреть весь подход и прийти к системе, которая показала себя, как работающая.
JavaScript: два интересных сниппета
2023-04-10 в 8:01, admin, рубрики: javascript, race condition, reactivity, request deduplication, snippet, timeweb_статьи, Блог компании Timeweb Cloud, дедуликация запросов, Разработка веб-сайтов, реактивность, состояние гонки
Hello, world!
В этой небольшой заметке я хочу поделиться с вами двумя сниппетами, которые показались мне очень интересными. Первый сниппет представляет собой пример реализации простой реактивности (signal), второй — способ предотвращения несогласованности данных в результате состояния гонки (race condition). Первая конструкция используется в SolidJS (с некоторыми дополнительными оптимизациями), вторая — заимствована из одного рабочего проекта.
Интересно? Тогда прошу под кат.
Race condition в веб-приложениях
2019-07-17 в 6:14, admin, рубрики: race condition, информационная безопасностьTL;DR Большинство атакующих использовали ненадежные методы race condition, инструмент racepwn поможет это исправить
Вася хочет перевести 100 долларов, которые есть у него на счету, Пете. Он переходит на вкладку переводов, вбивает Петин ник и в поле с количеством средств, которые необходимо перевести — цифру 100. Далее, нажимает на кнопку перевода. Данные кому и сколько отправляются на веб-приложение. Что может происходить внутри? Что необходимо сделать программисту, чтобы все работало корректно?
Читать полностью »
Компилируем код из кода для воспроизведения гонки двух процессов
2013-10-22 в 6:45, admin, рубрики: race condition, Блог компании ABBYY, гонки, компиляция, ненормальное программирование, отладка, метки: race condition, гонки, компиляция, отладка
Класс CSharpCodeProvider позволяет программе на C# компилировать код на C#. Обычный вопрос – «зачем». Обычные ответы:
- исполнение кода, данного пользователями, как на ideone.com,
- «ну мало ли зачем» и
- «а это уже отдельный вопрос»
Сегодня мы используем этот класс для удобного воспроизведения гонки двух процессов.
Читать полностью »

