RU

HTTP-запрос закончился, а LLM ещё работает: как проектировать AI-задачи на Go

Обычный Go backend привык отменять работу вместе с HTTP-запросом. Но если пользователь закрыл вкладку посреди анализа документа, это ещё не означает…

GoGolangLLMcontext.ContextPostgreSQLbackground jobsidempotencydistributed systemsAI SaaSbackend architecture.
Habr
RU

Kafka гарантирует порядок? Разбираем 3 инцидента с Outbox

Один ключ на все события заказа — и кажется, что порядок гарантирован. А потом клиенту приходит «Ваш заказ собран» раньше, чем «Оплата получена», ви…

Kafkatransactional-outboxPostgreSQLDebeziumCDCevent-orderingсистемный-анализнефункциональные-требованияidempotency
Habr
RU

LLM предлагает, код исполняет: как разделить reasoning и side effects в production-пайплайне

Если ваша LLM вызывает API и выполняет внешние действия, обычный retry после timeout может создать дубль или оставить систему в неизвестном состояни…

LLMAI-агентыproductionархитектура LLM-системside effectsidempotencyretrystate machinehuman-in-the-loopobservability
Habr
RU

Как мы заменили 30-минутный polling на IMAP IDLE и построили маленькую распределённую систему

Когда-то наш почтовый загрузчик был обычным методом с @Scheduled . Раз в 30 минут он подключался к ящикам, искал новые вложения и запускал их обрабо…

JavaSpring BootIMAP IDLEdistributed systemsPostgreSQL leasesidempotencybackpressurevirtual threadsconcurrencyat-least-once delivery
Habr
RU

Интеграция платёжных систем в high-risk вертикалях: архитектура, риски и практический опыт

Последние несколько лет я собираю платёжные интеграции для продуктов, которые банки вежливо называют «high‑risk». Под «high‑risk» обычно попада…

платежные системыэквайрингhigh-risk бизнесchargebackантифродstate machine платежейidempotencyretry логикарекуррентные платежи
Habr
RU

Idempotency keys: 5 граблей, которые мы поймали на проде

Пятница, 23:47. PagerDuty: “Платёж AmEx, провайдер вернул 5xx три раза подряд, билеты не зарезервированы.” Открываю логи – действительно три ответа…

идемпотентностьidempotencyплатежираспределённые системы.NETC#APIintent-keyrace conditionграбли
Habr
RU

TeachTrack: NestJS + Telegram-бот напоминаний + РКН — как я в одиночку собрал CRM для частных репетиторов

Месяц назад я выложил на Хабр статью про TripTrack — GPS-трекер для машины на iOS, который собрал будучи бэкендером без опыта в Swift. Статья неожид…

nestjspostgresqltypeormtelegram botoutbox patternidempotencyкейсиндихакерpet-проектбэкенд