Как один сервер на Go держит 2500 бойцов в браузерной драке
Я в одиночку делаю Brawl Town — уличную драку в браузере в духе Final Fight и Streets of Rage, только онлайн: одна улица, сотни игроков и ботов, все…
Tech news from the best sources
Я в одиночку делаю Brawl Town — уличную драку в браузере в духе Final Fight и Streets of Rage, только онлайн: одна улица, сотни игроков и ботов, все…
Обычно на митапах всё довольно предсказуемо: доклады, слайды, кофе-брейк и немного общения между ними. Но в прошлом году мы решили перевернуть привы…
Привет! Меня зовут Сергей Прокопкин , я развиваю мотивационную программу и отвечаю за realtime-систему трекинга заданий в Авито . В моти…
Большинство учебников предложит синхронизировать потоки с помощью мьютекса. Но под реальной high-performance нагрузкой блокировки превращаются в кош…
Каждый день в 18:00 клиентам становится доступна отчётность по продажам, и многие одновременно нажимают кнопку «Загрузить отчёт». Это может быть дет…
24 сентября вышла PostgreSQL 19 Beta 4. До release candidate осталось совсем немного, и на этом этапе уже интереснее смотреть не на длинный список н…
Сколько на самом деле стоит путь пакета через ядро Linux, и сколько из этой стоимости снимают io_uring, AF_XDP и DPDK? Собрал библиотеку, в которой…
Сразу хочу обозначить важный момент: эта статья не столько про пакет SilentJSON, сколько про схему работы с информацией , которую на его примере уда…
А вы тоже организуете общение между микросервисами по HTTP/1.1 + JSON? Так вот, адекватные люди на хайлоаде давно так не делают. Как это выглядит в…
Расскажу, как мы отказались от внешних серверов, безболезненно пережили переезд, избежали сбоев в высокий сезон и сократили расходы на эксплуатацию…
Маркетолог прислал мне скрин дашборда и одно слово: «пусто». На скрине — панель «Количество пришедших по реферальной ссылке за период». Ноль. Под не…
История об асинхронном серверном EAV‑движке, epoll'е, битовых полях и шардинге, который не смог. Это должен был быть очередной в…
HurriCache это распределенная key-value база данных с поддерожкой как простых типов ключ значение так и конейнеров, блокировок, работы с atomics и м…
Задача звучала как задача из учебника: перенести кредитный домен банка с Oracle на PostgreSQL. 70+ таблиц, чуть больше терабайта данных, 500–3000 RP…
На одном собеседовании меня спросили про VIEW. Я ответил честно: в живых проектах они мне почти не попадались; для агрегатов надёжнее держать отдель…
Разбор архитектуры HurriCache — распределенного in-memory кэша без персистентности, созданного для ultra-high-load систем с критичными требованиями…
Сделал mmap-базу для 4 млн товаров и получил ~35k RPS. Поиск оказался настолько быстрым, что bottleneck пришлось искать уже после базы. В итоге опти…
Всем привет, меня зовут Михаил, я работаю Java/Kotlin разработчиком в ОТП Банке. Все мы знаем про Redis. Часто используем его для in-memory кэша. В…
Построение HA-кластера в PostgreSQL традиционно требует внешнего стека: Patroni, распределенного хранилища конфигураций и набора вспомогательных ути…
Думаю, многие сталкивались с ситуацией, когда облачный провайдер честно обещает 99.95% или даже 99.99% SLA, но в реальности бизнес-система пада…
Всем привет! Меня зовут Муса. Наша команда занимается витринами данных по товарному учёту. Каждый день мы доставляем около 10 млрд записей…
Некоторое время назад мне пришла задача спроектировать высокопроизводительный балансировщик нагрузки для протокола Diameter. Через 3 месяца задача и…
На первый взгляд балансировка кластера NGFW мало отличается от балансировки других средств информационной безопасности или ИТ-сервисов. Однако на пр…
CONTRACT умеет писать protobuf-совместимый wire-формат — и в 20 из 28 замеров обогнал по скорости настоящий libprotobuf, включая его собственный сге…
Вопрос производительности работы сервера Angie и различных оптимизаций не раз поднимался в других статьях цикла. Поэтому здесь мы соберём…
Мой мемный сервис «Шакализатор» победил в премии Яндекс Практикума , но меня больше интересовал другой вопрос: как VPS с одним ядром и 1 ГБ RAM пере…
Go часто называют простым языком. Но простота синтаксиса не отменяет конкурентности, рантайма, сборщика мусора, интерфейсов, особенностей памяти и р…
Привет! На связи команда Далее . В этой статье расскажем, как мы взяли довольно простую игру-тренажер по кибербезопасности и сделали ее самостоятель…
Мы привыкли считать JSON «медленным» текстовым форматом, удобным исключительно для людей. Мы используем его для REST API, конфигурационных файлов и…
Представьте себе высоконагруженный сервис, который решает, с какого из множества складов нужно отправить товар покупателю. В пике через него проходи…