RU

Как опубликовать внутренний API из DMZ, если соединения в LAN запрещены: пять подходов, которые мы проверили

Как опубликовать внутренний API из DMZ, если соединения в LAN запрещены: пять подходов, которые мы проверили Все пять схем мы собирали на  NEOM…

APIDMZАрхитектураБезопасностьHAProxyKafkaActiveMQ ArtemisWSO2NeoflexJava
Habr
RU

Зачем я добавил Go-сервис туда, где его не просили

Недавно мне дали тестовое задание на проектирование интеграции между 1С и Yandex 360. На первый взгляд задача выглядела достаточно прямолинейно: 1С…

архитектураGoмикросервисыинтеграцияAPI1СYandex 360базы данныхочередиbackend
Habr
RU

Как найти причину сбоев внешнего API и исправить её до того, как интеграция попадет в прод

Внешний сервис может вернуть 500 вместо ожидаемого 400, принять запрос с ошибкой или ответить успешным статусом, но потерять час…

APIинтеграциипроектирование APIсистемный анализмикросервисыархитектура ПОвнешние сервисытребования к системеобработка ошибокотказоустойчивость
Habr
RU

Валидатор не нашёл поле is_admin, а Go его нашёл: пять ошибок при работе с JSON

Один и тот же JSON может привести систему к разным выводам. Валидатор пропустит поле, которое Go‑сервис спокойно прочитает, nil ‑слайс пре…

GoGolangJSONAPIbackendмикросервисывалидация данныхсериализациябезопасность приложенийразработка ПО
Habr
RU

Как защитить платежный API от двойных списаний с помощью идемпотентности

Пользователь нажал кнопку оплаты один раз, но деньги списались дважды — такой сценарий возникает не из‑за редкой ошибки, а из‑за…

идемпотентностьраспределённые системымикросервисыAPIbackendплатежные системыотказоустойчивостьPostgreSQLконкурентный доступархитектура ПО
Habr
RU

Почему агентный SDD ломается между микросервисами?

Каждая команда описала свой сервис, каждый агент точно выполнил локальную спецификацию, все контракты прошли проверку — а сквозной процесс всё равно…

SDDмикросервисагентAIAI-агентAPIДокументацияТребованияТЗ
Habr
RU

Как корректно описать приём и обработку webhook

Webhook часто воспринимают как простой механизм доставки уведомлений: пришло событие — обработали — вернули 200. На практике име…

системный анализсистемный аналитиктребованияwebhookинтеграцииAPIраспределённые системыидемпотентностьобработка событийотказоустойчивость
Habr
RU

Своя self-hosted двухсерверная VPN-архитектура. Подробный путь разработки и ошибки, с которыми вы можете столкнуться

Проект представляет из себя быстрый способ воссоздать архитектуру состоящую из 2 серверов (локальный + удаленный) с определенными сервисами, которые…

APIТестированиеLinuxИнструментыGitБезопасностьPythonRubyunixIDEМузыкаРаботаHTMLDIYGitHubНавыкиVPNTelegramСервисыDockerCloudflareФронтендRedisQAМессенджерdevСерверNFTМашин1CDeFiGrafanaVPSСтатьи
Tproger
EN

Expedia Uses AI Driven Service Telemetry Analyzer to Accelerate Incident Investigation

Expedia Group has introduced STAR, an internal AI-assisted observability platform that helps engineers investigate production incidents using servic…

OpenTelemetryRedisAI Assisted CodingSite Reliability EngineeringKubernetesPrompt EngineeringAPIHTTPMonitoringgRPCGraphQLIncident ResponsePlatform EngineeringObservabilityDevelopmentAI, ML & Data EngineeringArchitecture & Designnews
InfoQ
RU

Интеграция CGM в Django: Libre, Medtrum, Home Assistant и собственное хранилище данных

Современный диабетик использует сразу несколько устройств и сервисов. Сенсор непрерывного мониторинга глюкозы, приложение производителя, иногда инсу…

DjangoPythonAPIHome AssistantPostgreSQLREST APILibreLinkUpMedtrumдиабетмониторинг глюкозы
Habr
RU

Как Android-инженер спроектировал gateway для миллионов пользователей: опыт перехода в инфраструктуру

История перехода из андроид разработки в инфраструктуру. Как мобильный инженер спроектировал gateway для платформы с миллионами пользователей, освои…

APIОптимизацияПарсингAndroidИнструментыОпросПрактикаРаботаTorБотыНавыкиHRБэкендApp StoreИграПриложениеСерверKubernetesИнфраструктураСтатьи
Tproger
RU

Netflix построила Service Topology: живая карта микросервисов

Как Netflix объединяет eBPF, IPC-метрики и tracing в единую карту зависимостей. Разбираем, почему статические схемы устарели и что перенести в свою…

APILinuxПроизводительностьМикросервисыАрхитектура ПОDevOpsГрафыАрхитектура приложенийИнфраструктураСтатьи
Tproger
RU

ObjectId против UUID: как выбор _id в MongoDB влияет на API, индексы и миграции

_id в MongoDB кажется мелочью, пока не попадает в API, события и миграции. Разбираем, когда оставить стандартный ObjectId , когда нужен UUID , почем…

MongoDBObjectIdUUIDBSONиндексыархитектураAPIбазы данныхидентификаторы
Habr
RU

FASA: архитектура ПО без слоёв и адаптеров. Спецификация

Большинство современных архитектурных подходов учат нас строить всё больше слоёв абстракции: контроллеры, сервисы, репозитории, адаптеры, транспорте…

Архитектура ПОПрограммированиеИнтерфейсыВерсионированиеЧистая архитектураПроектирование ПОAPIМикросервисыBest practicesкомпонентная архитектура
Habr
RU

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

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

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

Билеты, баги и БДСМ: хроники тревел-стартапа

Если вы никогда не задумывались, на чём вообще держится индустрия путешествий, присаживайтесь. Рассказ будет недолгим — минут на сорок. Если вы хоть…

Тревел-разработкаАрхитектура ПОGDSSOAPAPILegacyPSSСтартапыИнтеграцияПрограммирование
Habr
RU

Скрытый сбой идемпотентности в финтех-системе: разбор инцидента

Разбор реального production-инцидента в финтех-системе: почему ошибка HTTP 500 не остановила операцию создания карты и как сбой идемпотентности в AP…

APIОпросМикросервисыРефакторингРаботаБотыHRСервисыФинтехФронтендПриложениеСервермикроfaqСтатьи
Tproger
RU

Как запихнуть килограмм LLM в телеграм-бота и не сойти с ума

Все началось с прикола, я сидел с друзьями и подумал, а вот было бы прикольно запихать разные модели нейросетей в один чат и заставить их думать, чт…

LLMTelegram botPythonClaudeGeminiGPT-4oAPITelegram Mini Appsасинхронностьархитектура
Habr