RU

Кэш не работал восемь недель. Всё это время он честно писал об этом в лог

Redis у сервиса прогнозов не было восемь недель: контейнер упал с кодом 255 и больше не поднялся. Всё это время каждый запрос считался заново, 1,9 с…

redisкэшированиеdockerлогированиемониторингfastapiнадежность
Habr
RU

Fluent Swap: как я вышел за пределы CRUD и начал разрабатывать matchmaking на Go

Большинство backend‑проектов начинаются предсказуемо: HTTP‑запрос, бизнес‑логика, SQL и ответ клиенту. Но что изменится, если вместо очере…

GoGolangwebsocketmatchmakingbackendredisконкурентностьархитектура
Habr
RU

Redis — история одного падения

Пару лет назад мы устроили настоящее расследование серии инцидентов в поисках скрытого дефекта нашего Redis-клиента. Команда воспроизводила сбои под…

javaredisjedissredowntime
Habr
RU

Как я ускорил работу с топом-пользователей с 36 минут до 20 секунд, используя Redis Sorted Set

Всем привет, меня зовут Михаил, я работаю Java/Kotlin разработчиком в ОТП Банке. Все мы знаем про Redis. Часто используем его для in-memory кэша. В…

javaredishighloadвысоконагруженные системыоптимизацияоптимизация кодаоптимизация запросовhighload systemsspringspring boot
Habr
RU

Я продал одно место на концерт 20 раз. Разбираемся, как правильно защититься от race condition в Spring Boot

Однажды я решил проверить на практике байку, которую слышал на десятке собеседований: “у нас на проде было такое-то место продано дважды, потому что…

javahibernatespring data jparedisoptimistic lockingpessimistic lockingrace conditionspring boot
Habr
RU

ЧАСТЬ 2. Своя self-hosted двухсерверная VPN-архитектура: Gitea, сборка Amnezia, проблемы 7.1.3-arch1-2 и многое другое

Эта статья является прямым продолжением вот этой статьи про мой проект ServeHub-2 , которое охватывает релиз 1.4.0 и отчасти 2.0.0, 2.1.0 (а также о…

devopsgiteaarchself-hosteddkmsnginxdocker-composevpnдомашний продакшнredis
Habr
RU

Как желание написать простой CRUD привело к созданию целой видеоплатформы

От CRUD на FastAPI до видеоплатформы: история одного pet-проекта: История о том, как учебный CRUD-проект на FastAPI постепенно превратился в стенд с…

fastapidevopskubernetesdockerpostgresqlrabbitmqredisмикросервисыgitlab ciмониторинг
Habr
RU

Чтобы ваши тесты работали быстрее, нужен простой советский… xdist. Я измерил. Часть 2

В первой части я ускорил большой интеграционный pytest-сьют с получаса до полутора минут за счёт инфраструктурных правок. Во второй проверяю следующ…

pytestpytest-xdistpythonxdistинтеграционные тестыускорение тестовпараллельное тестированиеpostgresqlsqlalchemyredis
Habr
RU

Как мы автоматизировали отдел продаж в Bitrix24 с помощью ИИ

Привет! Я Влад Вандер, контент-маркетолог в Velmi. Ребята из команды рассказали мне, как автоматизировали отдел продаж и научили ИИ-бота квалифициро…

AIllmPythonавтоматизацияCRMbitrix24отдел продажfastapiredisвебхуки
Habr
RU

Healthchecks в Docker Compose для Laravel: как сделать так, чтобы сервисы запускались в правильном порядке

Если вы хоть раз поднимали Laravel-проект в Docker Compose, наверняка сталкивались с ситуацией: контейнер с приложением стартует раньше, чем база да…

dockerdocker-composelaravelphphealthchecksphp-fpmredispgsqlnginx
Habr
RU

Кэширование и трекинг. Как YOLO экономит время и нервы

Случалось мне работать с CV: запускаешь сорокаминутное видео, YOLO честно находит людей, машины, собак. На двадцатой минуте падает сеть или, что хуж…

redisredis как настроитьyoloyolo как настроитьyolo redisКэшированиетрекингкешcvruvds_статьи
Habr