Ускоряем Spring Boot без изменения кода — 25 июня 2026 г. в 15:27:50.288
Ускоряем Spring Boot без изменения кода Многие приложения тормозят не из-за бизнес-логики, а из-за логирования. Каждый лог - это I/O операция. При высокой нагрузке это становится узким местом. Решение - асинхронное логирование через Logback. Что происходит: - сообщения складываются в очередь - отдельный поток обрабатывает их в фоне - основной поток не блокируется - меньше задержек и выше throughput Настройка проста - добавьте logback-spring.xml в: src/main/resources/ Пример конфигурации: <configuration> <!-- Async wrapper --> <appender name="ASYNC_CONSOLE" class="ch.qos.logback.classic.AsyncAppender"> <appender-ref ref="CONSOLE"/> <queueSize>5000</queueSize> <discardingThreshold>0</discardingThreshold> <includeCallerData>false</includeCallerData> </appender> <!-- Console appender --> <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern> %d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger - %msg%n </pattern> </encoder> </appender> <root level="INFO"> <appender-ref ref="ASYNC_CONSOLE"/> </root> </configuration> Когда это особенно полезно: • high-load сервисы • микросервисы с большим количеством логов • API с высокой RPS • продакшен-окружение ⚠️ Важно: при аварийном завершении часть логов из очереди может потеряться. Для критичных логов используйте файл + async. Маленькая настройка - большой прирост производительности.

