Итак, я пытаюсь выяснить лучшие методы подключения к базе данных. У меня есть большой графический интерфейс .NET, который служит в качестве внешнего интерфейса для MySQL db. В настоящее время я открываю соединение с загрузкой приложения и использую его для любых взаимодействий, в которых я нуждаюсь. Однако весь графический интерфейс является однопоточным.
По мере того как я начинаю добавлять BackgroundWorkers для больших запросов и исполняется, я беспокоюсь о своем открытом соединении. Я знаю, например, что у меня может быть только один dataReader за один раз, открытый в этом соединении. С несколькими потоками пользователь может попытаться создать экземпляр более того.
Каковы преимущества/недостатки сохранения одного открытого соединения для приложения и открытия нового соединения для каждого взаимодействия?
Каковы некоторые общие шаблоны проектирования для этого?
Спасибо -
Джонатан