Как избежать дублирование сущностей при сохранении в БД?

Приложение на spring boot, есть события которые прилетают одновременно, например 5 событий и в них содержится какой-то person, в приложение есть список сущностей, в каждую нужно добавить копию person из события. Так как одновременно прилетают события, возникают случаи дублирования при создании копий сущностей, так как события выполняются в разных потоках одновременно. Как избежать такие проблемы? Блокировка на уровне БД, но если сильно нагружено приложение и пользователям нужно получить доступ к этим сущностям, в в этот момент прилетают события, таблица будет заблокирована и проблема производительности. Уменьшил транзакцию, раньше почти сразу открывалась, сделал чтобы при создании сущности сразу коммитилась. Как решаются такие проблемы?


Ответы (0 шт):