kodnado.ru/articles

Статьи

Короткие разборы по сайтам, ботам, скриптам, серверу и автоматизации. Без академичности: только то, что помогает быстрее понять задачу и принять решение.

1127 материаловРазборы по сайтам, ботам, API, серверам и автоматизации

Капча недоступна пользователю с нарушением зрения: как исправить

Как сделать защиту формы доступной: невидимая оценка риска, серверные лимиты, honeypot, аудиовариант, клавиатура, screen reader и WCAG.

доступность, WCAG, капча, screen reader, формы, антиспам Читать статью →

Статус возврата не обновляется в личном кабинете: что проверить

Почему зависает статус возврата: webhook, очередь, API, сопоставление статусов, кеш, права и синхронизация интернет-магазина с учетной системой.

возврат товара, личный кабинет, статус заказа, webhook, e-commerce, синхронизация Читать статью →

График считает отмененные заказы: как исправить метрики и BI-отчет

Как исключить отмененные заказы из графика и не исказить выручку: статусы, даты, возвраты, SQL, витрина данных, кеш и единое определение метрики.

BI, аналитика, отчет, отмененные заказы, SQL, выручка Читать статью →

Удаленные записи возвращаются после синхронизации: как исправить ETL

Почему удаленные записи появляются снова после синхронизации: soft delete, tombstone, watermark, конфликт источников, CDC и правильное распространение удаления.

ETL, синхронизация данных, soft delete, CDC, tombstone, миграция Читать статью →

GraphQL subscription теряет соединение после обновления токена

Как исправить разрыв GraphQL subscription после refresh token: connectionParams, переподключение WebSocket, гонки, keepalive и повторная подписка.

GraphQL, subscription, WebSocket, refresh token, авторизация, reconnect Читать статью →

Webhook потерялся и данные не синхронизировались: надежная доставка

Как восстановить потерянный webhook и сделать синхронизацию надежной: журнал событий, retries, подпись, idempotency, очередь, reconciliation и DLQ.

webhook, синхронизация, retry, idempotency, очередь, API Читать статью →

Повторная обработка создает дубли заказов: идемпотентность очереди

Как убрать дубли заказов при retry RabbitMQ, Kafka или Redis Streams: idempotency key, уникальный индекс, транзакции, outbox и подтверждение сообщений.

очереди, идемпотентность, дубли заказов, RabbitMQ, Kafka, retry Читать статью →

Self-hosted runner недоступен после перезагрузки: восстановление CI/CD

Почему self-hosted runner не стартует после reboot: systemd-служба, пользователь, рабочий каталог, токен, сеть, Docker и автоматический запуск.

self-hosted runner, CI/CD, GitHub Actions, GitLab Runner, systemd, деплой Читать статью →

Локально код работает, а в Cloud Function падает: как найти причину

Диагностика cloud function: runtime, entrypoint, зависимости, переменные окружения, права IAM, timeout, память, файловая система и сетевой доступ.

Cloud Functions, serverless, runtime, IAM, деплой, логи Читать статью →

Обратный DNS не совпадает с именем почтового сервера: настройка PTR

Как согласовать PTR, A-запись, HELO/EHLO, SPF, DKIM и почтовое имя сервера, чтобы письма не отклонялись и не попадали в спам.

PTR, reverse DNS, почтовый сервер, HELO, SPF, DKIM Читать статью →

GCLID теряется до оформления заказа: как сохранить атрибуцию

Как сохранить GCLID от рекламного клика до заказа: URL, cookie, localStorage, backend-сессия, переходы между доменами, согласие и офлайн-конверсии.

GCLID, Google Ads, атрибуция, конверсии, аналитика, заказы Читать статью →

После сброса пароля старый пароль работает: как исправить авторизацию

Почему старый пароль остается действительным после сброса: кеш, несколько хешей, реплика БД, SSO, активные сессии и корректная инвалидация доступа.

сброс пароля, авторизация, сессии, безопасность, кэш, SSO Читать статью →