Spring Data JPA: основы и не только

Оглавление Консультируя компании (пытаясь оптимизировать существующие или спроектировать новые системы) мне часто приходится сталкиваться с тем, что многие разработчики не знают или не применяют крайне простые, но очень важные возможности различных фреймворков. Введение В частности, крайне популярный инструмент Spring Data JPA зачастую используется так, словно за последние годы не было никаких улучшений. Берутся самые базовые … —Читать далее—

Loading

Профессиональные привычки программиста

Оглавление Введение Опытный разработчик отличается не только знанием языков или фреймворков, но и набором “правильных” рабочих привычек. В этой статье мы попробуем обсудить довольно простые практики, которые помогают опытным разработчикам добиваться высокого качества кода и эффективности. Приведем примеры кода и некоторые иллюстрации, показывающие идеи архитектуры и взаимодействия. Доводить задачу до конца Профессионал не бросает работу … —Читать далее—

Loading

Weekly Digest #7

proselyte_sde_weekly_digest

Друзья, предлагаю ознакомиться с седьмым еженедельным дайджестом из мира Java разработки. Публикации: Новые релизы:

Loading

Что такое наблюдаемость и зачем она нужна в микросервисах?

Оглавление Введение В условиях роста распределенных систем, микросервисной архитектуры и облачных платформ современный разработчик сталкивается с постоянной необходимостью понимать, как работает его приложение не только в рамках одного сервиса, но и во всей экосистеме. Наблюдаемость (Observability) – это ключ к прозрачности работы системы в продакшене. Это не просто графики и алерты, а способность ответить на … —Читать далее—

Loading

Spring WebFlux vs Spring MVC с виртуальными потоками: выбор подхода

spring-web-vs-webflux

Оглавление Введение: проблема конкурентности Современные микросервисные системы обслуживают тысячи одновременных запросов, чаще всего – I/O-интенсивных (вызовы к БД, API, файловым системам и т.п.). Классическая модель «один поток на запрос» больше не масштабируется: тысячи ОС-потоков перегружают CPU и память. Поэтому появились два подхода: Обе технологии решают задачу конкурентности, но используют разные архитектурные принципы. В этой статье … —Читать далее—

Loading