Spring Data JDBC vs Spring Data JPA: когда и зачем выбирать JDBC

Оглавление Введение При проектировании доступа к данным в приложениях на Spring Java разработчики часто используют Spring Data JPA, опирающуюся на ORM, для удобной работы с базой данных. Однако существует более “легкая” альтернатива – Spring Data JDBC, которая предлагает прямой доступ к данным без полноценного ORM-слоя. В этой статье мы подробно рассмотрим технические отличия Spring Data … —Читать далее—

Loading

Нормализация баз данных глазами разработчика

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

Loading

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

Оглавление Введение Современные приложения работают с разными видами данных и нагрузок, поэтому грамотный выбор базы данных (БД) критически влияет на архитектуру и масштабируемость системы. Понимание типов баз данных помогает бэкенд-разработчику принимать обоснованные решения при проектировании: от этого зависит, сможет ли система эффективно обрабатывать транзакции в реальном времени или выполнять сложную аналитику на больших объёмах данных. … —Читать далее—

Loading

Transactional Outbox Pattern – надёжная передача событий между сервисами

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

Loading

Улучшаем обработку ошибок и логирование в REST API

Оглавление Введение Каждый разработчик хотя бы раз сталкивался с раздражающей ситуацией, когда API отвечает коротко и непонятно: «400 Bad Request». В таких случаях остаётся лишь гадать, что именно пошло не так: неправильный формат данных, пропущенные поля, неверный тип, или что-то ещё? Ситуация становится особенно неприятной, когда вы одновременно выступаете и разработчиком API, и его клиентом. … —Читать далее—

Loading