autocommit в ORM сессии (sqlalchemy)

Есть класс DatabaseSession с методом:

async with async_session_maker() as session:
            try:
                yield session
                if commit:
                    await session.commit()
            except Exception:
                await session.rollback()
                raise
            finally:
                await session.close()

Соответственно, все CRUD'ы автокоммитятся, в том числе read.

Вопрос: насколько это правильно? Создаёт ли это дополнительную нагрузку на приложение или БД?

Проектирую приложение для управления КД для конструкторов, сейчас в тестовой БД около 100 записей, разница не чувствуется. Но что если в БД будет 10000 записей и 5 одновременно работающих пользователей?

Вопрос 2: Какие метрики нагруженности существуют для СУБД? Как мне заранее узнать узкие места?

Извините за такие вопросы, я не айтишник, но некоторые вещи приходится самому делать.


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