Я создал библиотеку в Python, которая содержит функции для доступа к базе данных. Это библиотека-обертка вокруг базы данных сторонних приложений, написанная из-за того, что стороннее приложение не предлагает достойного API. Теперь я изначально позволял каждой функции открывать соединение с базой данных на время вызова функции, что было в порядке, пока моя программная логика не использовала вложенные вызовы функций, где я бы затем вызывал определенную функцию несколько тысяч раз. Это было не очень эффективно. Профилирование показало, что накладные расходы были при настройке соединения с базой данных - один раз на вызов функции. Поэтому я переместил открытое соединение из функции (ей) в сам модуль, чтобы соединение с базой данных было открыто при импорте библиотечного модуля. Это дало мне приемлемую производительность.
Теперь у меня есть два вопроса по этому поводу. Во-первых, нужно ли мне беспокоиться о том, что я больше не закрываю соединение с базой данных явно, и как я могу сделать это явно с этой настройкой? Во-вторых, относится ли то, что я сделал, к сфере хорошей практики, и как я мог бы иначе подойти к этому?
openConn
функцию и сделайте так, чтобы пользователь передавал ее каждой вызываемой функции таким образом, чтобы они могли охватывать соединение вwith
выражении или чем-то еще