Статьи из моего telegram канала: Senior’s Blog. Подписывайтесь на канал ;-)

Батчевое сохранение данных в Spring Data JPA

В этой статье я исследую стратегии генерации идентификаторов для сущностей на предмет их совместимости с батчевой вставкой в БД. В качестве ORM используется Spring Data JPA, а в качестве БД - PostgreSQL.

[Read More]

Согласованность, Репликация и Базы Данных по CAP

Это ещё одна статья про CAP теорему. Я прочитал множество книг и статей по распределенным системам и в этой статье хочу обобщить полученную информацию. В статье я рассматриваю модели согласованности данных, типы репликации данных, свойства CAP теоремы, соотношу CAP теорему с типами баз данных. В конце я подвожу итог в котором объясняю почему CAP теорема является формальным и условным описанием распределенных систем и почему на нее не стоит полагаться.

[Read More]

Github Actions кеширование зависимостей

В этой заметке я подготовил пару сниппетов кода для быстрого включения кеширования в Github Actions. Кеширвоание зависимостей позволяет существенно повысить скорость сборки проекта.

[Read More]

Генераторы, Асинхронность, Корутины

В статье я разбираю основные концепции необходимые для понимания корутин и использование корутин в асинхронном программировании. Я рассматриваю генераторы, кратко объясняю асинхронные неблокирующие IO операции, рассказываю как концепция корутин вытекает из генераторов, а затем как корутины превращаются в примитив для асинхронного программирования.

[Read More]

Оптимистические и Пессимистические Блокировки

Краткий обзор оптимистических и пессимистических блокировок. В этой заметке рассматриваются основные различия этих двух подходов на примере реализации целочисленного счетчика на Java.

[Read More]