Пул соединений ODBC - PullRequest
       6

Пул соединений ODBC

1 голос
/ 17 мая 2010

Я унаследовал набор приложений .Net c # от разработчика, который общается с базой данных Informix на сервере Unix.

Вместо использования обычных методов управления соединениями с базой данных (одноразовый шаблон / «открывать поздно / закрывать рано»), кажется, код открывает одно соединение ODBC, когда каждое приложение загружается и не закрывает его.

Есть ли способ узнать, сколько открытых соединений ODBC?

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

Ответы [ 2 ]

2 голосов
/ 18 мая 2010

"но я встречаю сопротивление, потому что текущий код работает."

+ 1 для тех, кто оказывает сопротивление.

Если это действительно тот случай, когда требуемая функциональность должным образом поддерживается, и, кроме того, нет никаких проблем с производительностью или около того, то ничего не сломано, и если ничто не сломано, ничто не должно быть исправлено.

Я видел, как много яппи-программистов ломали рабочие системы, потому что они думали, что знают «лучший» способ организации кода.

Если вы убеждены, что ваш способ организации кода (ваши предполагаемые «лучшие практики») имеет какие-либо преимущества по сравнению с тем, который применяется в существующих системах, продемонстрируйте это для бизнеса, применив его в новом проекте. Если действительно есть заметные преимущества, то, поверьте мне, пользователи заметят. Если нет, то вам преподали очень важный урок о не важности «какой способ кодирования является лучшим».

1 голос
/ 17 мая 2010

Вы можете включить трассировку ODBC в Администраторе ODBC, запустить приложение, которое затем должно открыть запрошенные соединения ODBC в пуле. Отредактируйте файл трассировки ODBC и укажите количество вызовов SQLConnect или SQLDriverConnect, сделанных для получения общего количества соединений ODBC, выполненных приложением. Любые вхождения SQLDisconnect указывают, что соединение было закрыто, и это должно быть взято из общего числа на соединениях ...

...