Kafka exactly-once глазами разработчика: как не сломать консистентность в ПРОДе

Exactly-once в Kafka – это не магия “событие обработается один раз”, а набор конкретных гарантий, ограничений и эксплуатационных обязательств. Оглавление Введение Проблемы с Kafka exactly once обычно начинаются не с падения брокера. Все выглядит куда спокойнее: сервис жив, консьюмер группа активна, lag вроде бы под контролем, но в бизнес-данных появляются странные данные. Один заказ дважды … —Читать далее—

Loading

Что разработчик должен знать про mTLS?

Оглавление Введение У многих разработчиков mTLS долго живет в голове как что-то из разряда “дополнительной опции безопасности”: включили сертификаты с двух сторон – и стало безопаснее. На практике все несколько интереснее. mTLS – это не просто шифрование трафика между сервисами. Это способ встроить машинную идентичность прямо в транспортный слой: еще до того, как приложение начнет … —Читать далее—

Loading

p99 глазами разработчика: как измерять, считать, расследовать и реально снижать tail latency

Оглавление Введение Перцентили latency – это не “красивая статистика”, а способ говорить про пользовательский опыт и предсказуемость системы там, где среднее время ответа на запрос (avg) системно врет. Практика крупных распределенных систем показывает: даже редкие (например, 1%) “медленные” ответы на уровне компонентов превращаются в массовые (десятки процентов) “медленные” ответы на уровне сервиса, если запросы имеют … —Читать далее—

Loading

Tomcat глазами разработчика

Оглавление Введение Apache Tomcat – это популярный открытый Java-сервер (Servlet-контейнер), реализующий спецификации Jakarta Servlet, JSP, EL и WebSocket. Проект Tomcat был создан в Sun Microsystems и передан в Apache в 1999 году. За годы развития Tomcat стал де-факто стандартом для запуска веб-приложений на Java, будучи референсной реализацией сервлет-спецификации. Tomcat славится своей надежностью, высокой производительностью и … —Читать далее—

Loading

Hikari CP глазами разработчика

Оглавление Введение: зачем нужен пул соединений? Для высоконагруженных серверных приложений взаимодействие с базой данных (БД) является одной из самых “тяжелых” операций. Установление нового подключения к БД – дорогостоящая операция: она включает сетевые взаимодействия, аутентификацию, выделение памяти и т.д. Если для каждого запроса к БД открывать новое соединение, приложение быстро столкнется с огромными накладными расходами: каждый … —Читать далее—

Loading