RU

Ваш PostgreSQL болеет молча. Десяток запросов, чтобы это увидеть

Пятница, вечер. Один эндпоинт начал отвечать восемь секунд вместо двухсот миллисекунд, а в Grafana всё зелёное. PostgreSQL редко падает громко — он не…

postgresqlпроизводительностьidesqlиндексыvacuumbloatтранзакциитяжелые запросы
Habr
RU

async‑profiler в production: CPU, аллокации, lock contention и чтение flame graph

Профилирование Java‑приложений в production часто упирается не в отсутствие инструментов, а в их ограничения: CPU горит в&nbs…

async-profilerJavaJVMпрофилированиеflame graphпроизводительностьаллокациимногопоточностьlock contentionlatency
Habr
RU

Шёл за утечкой памяти, нашёл утечку диска: SXSSFWorkbook без dispose() в Apache POI

Меня зовут Игорь Симаков, работаю engineering manager’ом и руковожу командами разработки На одном из наших сервисов, который работает с XLSX-файлами, …

apache poiутечка памятиkubernetesjavarssarchunitspring bootпроизводительность
Habr
RU

CPU не умер, он просто ждал. Китай строит двухэксафлопсный суперкомпьютер без единого GPU — прорыв, необходимость, фейк?

El Capitan, Frontier, Aurora, JUPITER Booster — четыре нынешние эксафлопсные системы из рейтинга Top500, первые строчки суперкомпьютерной табели о ран…

суперкомпьютерtop500железокитайпроизводительностьit-инфраструктурарейтинг
Habr
RU

10 Гбит/с — зачем вам такая скорость передачи данных в облаке

Привет, Хабр! Меня зовут Витя, я проектирую интерфейсы в Selectel . Недавно рассказывал о выделенных ядрах — новой функциональности в облачных сервера…

10гбитselectelоблачные технологиисерверыоблакоядрагиперпоточностьпроизводительность
Habr
RU

Как работают выделенные ядра в облачном сервере: от планировщика Linux до тестов производительности

Привет, Хабр! Меня зовут Витя, я проектирую интерфейсы в Selectel . Недавно мы запустили новую функциональность — выделенные ядра для облачных серверо…

облачные технологииselectelсерверыоблакоядрагиперпоточностьпроизводительность
Habr
RU

[Перевод] Введение в микроядро Sel4

Предлагаю вашему вниманию перевод seL4 Whitepaper, который является хорошим введением в одно из самых известных микроядер для ОС — seL4 (лицензия GPLv…

sel4микроядроmicrokernelверификацияsecurereal-timeбезопасностьcapabilityоперационные системыпроизводительность
Habr
RU

Java нас обманывает: скрытая цена чистого кода

Все сейчас пишут красивый, современный код: стримы, record DTO, функциональные цепочки. Применяют лучшие практики и никаких мутабельных аккумуляторов …

javajvmпроизводительностьgcallocation-ratestreamsфункциональное-программированиеиммутабельностьбенчмаркиasync-profiler
Habr
RU

Как избежать утечек памяти во Flutter

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

Fluttermemory leaksутечки памятиdisposeFlutter DevToolsStreamSubscriptionstate managementtrackerпроизводительность
Habr
RU

Почему ваш Go‑сервис ломается под 1000 RPS и как найти узкое место за полчаса

Go-сервис может идеально проходить функциональные тесты и уверенно отвечать на локальных прогонах, а потом внезапно развалиться под 1000 RPS: p99 улет…

Goнагрузочное тестированиеbackendмикросервисыp99latencyvegetawrk2pprofпроизводительность
Habr
RU

Без рук: автоматизируем нагрузочное тестирование изменений в CI

Нагрузочное тестирование — одна из самых избегаемых тем, когда речь заходит о контроле качества ПО. Корпорации, конечно, не обходят его стороной, но е…

нагрузочное тестированиерегрессионное тестированиеlocustdevopslocomotivepythongithub actionsperformance testingci-cdпроизводительность
Habr
RU

Как я сделал трёхуровневый кэш сообщений в мессенджере на React Native — и что узнал по дороге

Я делаю мессенджер ONEMIX на React Native. К моменту, когда я начал писать этот пост, в нём уже больше десятка экранов, групповые WebRTC-звонки через …

react nativesqliteкэшированиеexpoмессенджерdrizzle ormмобильная разработкапроизводительностьархитектураtelegram
Habr
RU

Невидимый враг многопоточности: False Sharing и кэш-линии процессора

Представьте задачу: мы пишем высоконагруженный сетевой сервис и нам нужно считать входящие пакеты. Чтобы не блокировать потоки мьютексами, мы решаем д…

false sharingмногопоточностьоптимизациякэш процессораlock-freeкэш-линияпроизводительность