Рубрики
Технологии

Как правильно писать WebSocket API автотесты на Python

На примере FastAPI-чата показываю, как выстроить автотесты для API с двумя транспортами: REST используется для подготовки состояния, WebSocket — для проверки событий. В статье разбираем архитектуру тестов на Python: клиенты, фикстуры, Pydantic-схемы, контрактные проверки, Allure и CI/CD.

Рубрики
Технологии

Адреса, счета и геолокация. Минцифры расширило список данных, которые операторы должны передавать силовикам

Минцифры расширило перечень данных, которые операторы связи должны собирать и передавать силовым структурам через СОРМ. Это следует из нового приказа ведомства. Список данных, обязательных для сбора: Паспортные и адресные данные ИНН Банковские реквизиты IP-адреса Домены Логины Геокоординаты Организационные сведения В документе отдельно указано, что сбор данных нужно осуществлять через язык GraphQL, протокол WebSocket и интерфейсы…

Рубрики
Технологии

Free Porn Storage: передаём мемы в TLS-трафике, не привлекая внимания санитаров

Если нужно спрятать дерево, прячьте его в лесу. Лес интернета состоит из TLS-соединений (>70% трафика, если верить статистике): вкладок браузера, WebSocket-потоков, долгоживущих HTTPS-запросов, клиентов игр, мобильных приложений, телеметрии, видеоплееров, чатов и тысяч спокойных TCP/443-соединений, которые выглядят настолько обычно, что именно это и делает их интересной средой для, кхм, исследования. Очевидно, единственная и конечная цель существования […]

Рубрики
Технологии

Как «спят» вкладки в браузере

Привет! Меня зовут Костя, я разработчик интерфейсов в ЮMoney. В этой статье разбираю, почему вкладка после возврата из фона начинает вести себя странно: интерфейс подвисает, таймеры съезжают, события приходят пачкой. Материал особенно пригодится тем, кто делает сложные SPA с realtime‑обновлениями, WebSocket и насыщенным UI — CRM, дашборды, платёжные сценарии. В статье разберём: — как устроены […]

Рубрики
Технологии

15 вещей, которые вы бы не хотели знать о мессенджере MAX: тайная запись звука с микрофона в звонках и много чего еще

Я декомпилировал APK мессенджера MAX и проверил его поведение по коду. нашёл: скрытый SDK деанонимизации с отправкой реального IP в обход VPN на сторонний домен, недокументированную запись аудио со звонков по команде сервера, отключённую проверку TLS-сертификатов в QUIC-канале медиа, серверный C2-канал через WebSocket с командами выгрузки контактов и логов, аппаратный фингерпринт через Widevine DRM, ZipSlip […]

Рубрики
Технологии

Пост @demureiskander — Видеоконференцсвязь (+4) — 17.05.2026 18:41

Синхронный просмотр видео онлайн: почему screen share архитектурно плохое решение и как это исправить Задача на первый взгляд простая: двое в разных локациях хотят смотреть одно видео синхронно. На практике большинство берёт первое что под рукой (screen share) и получает предсказуемо плохой результат. Разберём что происходит под капотом у каждого подхода. Screen share Discord, Zoom, […]

Рубрики
Технологии

Race Condition убил SQLite в нашем проекте: как мы пришли к RediSearch

Мне пришла задача на исследование — выбрать хранилище для промышленной телеметрии. Я раньше с таким вообще не работал. Ни с временными рядами, ни с реактивным программированием, ни с WebSocket. Работал только с Postgres. Слышал про Redis, но не применял. На выбор — SQLite или Redis, надо исследовать что лучше. Пошёл читать. Нашёл TimescaleDB и ещё […]

Рубрики
Технологии

Real-time на сайте с Laravel и Centrifugo: зачем нужен WebSocket

Разбираем, зачем нужен real-time на сайте, почему polling создаёт лишнюю нагрузку и как Centrifugo помогает добавить WebSocket в Laravel-приложение без разрушения backend-архитектуры.

Рубрики
Технологии

Я устал от Duolingo и написал себе AI-репетитора. Go, Clean Architecture, 4 LLM-модели — и вот что из этого вышло

Мой рабочий день — это код. Вечером я хочу разговаривать с кем-то по-английски, а не нажимать на пингвинчиков. Duolingo учит меня заказывать яблоки, ChatGPT-чат отлично объясняет грамматику — но не помнит, что я разбирал Present Perfect в среду и опять путаю его с Past Simple в пятницу. Я хотел простую штуку: написать модели «давай сегодня […]

Рубрики
Технологии

Как я написал E2EE-мессенджер на Spring Boot и WebCrypto — и почему сервер не видит сообщения

Привет, Хабр. Я Java-разработчик и в основном работаю с backend: Spring Boot, базы данных, интеграции, авторизация, WebSocket — всё то, что обычно находится за интерфейсом. В какой-то момент я поймал себя на мысли: я каждый день пользуюсь мессенджерами, но плохо понимаю, как они устроены внутри. Окей, JWT, WebSocket, PostgreSQL, Redis — это понятно. Но что […]