изменять 6-7 таблиц. Пишу в постгрес. Проверять на наличие в базе и создавать(обновлять) сущности. Сейчас это реализовал через Ecto.Multi и транзакцию. Под нагрузками этот вариант хорошо будет блокировать таблицы. Может у кого уже были похожие проблемы или идеи?
INSERT INTO ... ON DUPLICATE KEY UPDATE позволит сэкономить на ручной проверке наличия в базе. Но это не ответ на твой вопрос, просто мысль вслух.
воспользуюсь советом.
дупликат кей не даст тебе что ты хочешь
ничего транзакция не блокирует, юзайте смело
Ну ничего не блокирует, конечно не совсем верно. Но таки лучше сначала убедиться, что проблема существует и не заниматься преждевременной оптимизацией.
нуда, ты же лучше знаешь
Ничего блокироваться не будет. Базы чуть не так работают.
https://postgrespro.ru/docs/postgrespro/9.6/explicit-locking#locking-tables почитай хотябы это для начала
Обсуждают сегодня