Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Коннект к БД / 18 сообщений из 18, страница 1 из 1
23.08.2016, 09:09
    #39295925
grok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
встретил в одной книге такую фразу

авторOpen and close connections quickly. Open the database connection in every method call, and close
it before the method ends. This way, a connection can’t be inadvertently left open. One way to
ensure the connection is closed at the appropriate time is with a using block.

действительно так ? кто что думает ?
мне всегда казалось, что лучше один коннект иметь
если ресурсов сервера жалко, можно делать timeout
...
Рейтинг: 0 / 0
23.08.2016, 09:18
    #39295933
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
grok, для веб приложений (ASP.NET) лучше так. Для десктоп можно и одним соединением, открытым при запуске программы и закрытым с ней же, обойтись.
...
Рейтинг: 0 / 0
23.08.2016, 09:41
    #39295950
YesSql
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
grok,

Зависит от клиентских библиотек. При закрытии соединение с СУБД может не разрываться а отправляться в _пул_ а при следующем открытии просто браться из пула.
...
Рейтинг: 0 / 0
23.08.2016, 14:03
    #39296269
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
grokкто что думает ?
Лично я думаю, что это какой-то старый текст, связанный с одной конкретной СУБД. Обычно у СУБД установка соединения и связанная с ним авторизация - весьма накладные процедуры. А удержание соединения - довольно дешёвая операция. И это ещё если не считать побочных эффектов на уровне ОСи типа исчерпания доступных эфемерных портов.
...
Рейтинг: 0 / 0
23.08.2016, 18:09
    #39296560
tchingiz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
grokвстретил в одной книге такую фразу

авторOpen and close connections quickly. Open the database connection in every method call, and close
it before the method ends. This way, a connection can’t be inadvertently left open. One way to
ensure the connection is closed at the appropriate time is with a using block.

действительно так ? кто что думает ?
мне всегда казалось, что лучше один коннект иметь
если ресурсов сервера жалко, можно делать timeout
делали наоборот. Одно соединение с БД на все время работы веб сервисов.
...
Рейтинг: 0 / 0
23.08.2016, 18:15
    #39296565
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
grokвстретил в одной книге такую фразу

авторOpen and close connections quickly. Open the database connection in every method call, and close
it before the method ends. This way, a connection can’t be inadvertently left open. One way to
ensure the connection is closed at the appropriate time is with a using block.

действительно так ? кто что думает ?


Да, действительно так, я в это верю.
Я верю, что в какой-то дурацкой книге ты встретил такую фразу!


grokмне всегда казалось, что лучше один коннект иметь
если ресурсов сервера жалко, можно делать timeout

0) ресурсов сервера нежалко. На то он и сервер.
1) если ресурсов сервера жалко, надо использовать пулы соединений.
2) дело даже не в ресурсах, а в том, что например этот чудик из книги собирается делать, если ему внезапно
будет нужно выполнить два-три его метода как единую транзакцию...
:-)

Т.е. это даже не глупость, это ниже плинтуса.
...
Рейтинг: 0 / 0
23.08.2016, 21:39
    #39296682
grok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
книга "Pro WPF in C# 2010 By Matthew MacDonald"
явно не по конкретной БД
и не такая уж и старая, 2010г

полностью еще не читал, но на беглый взгляд чисто по WPF книга норм
...
Рейтинг: 0 / 0
23.08.2016, 21:52
    #39296688
grok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
grokкнига "Pro WPF in C# 2010 By Matthew MacDonald"
явно не по конкретной БД
и не такая уж и старая, 2010г

полностью еще не читал, но на беглый взгляд чисто по WPF книга норм

страница 600
Building a Data Access Component
если быть совсем точным
...
Рейтинг: 0 / 0
24.08.2016, 00:42
    #39296716
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
Книга 2010 года по фреймворку имеет все шансы улететь в топку печки. Ибо нефиг.

Это вам не квантовая физика... а просто старый тухлый фреймворк.
...
Рейтинг: 0 / 0
24.08.2016, 09:19
    #39296836
grok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
maytonКнига 2010 года по фреймворку имеет все шансы улететь в топку печки. Ибо нефиг.

Это вам не квантовая физика... а просто старый тухлый фреймворк.

что тогда не тухло щас для windows desktop applications ?
ну или не windows
...
Рейтинг: 0 / 0
24.08.2016, 14:04
    #39297101
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
grokкнига "Pro WPF in C# 2010 By Matthew MacDonald"
явно не по конкретной БД
Названия "WPF" и "C#" неумолимо ограничивают СУБД ровно одной.
...
Рейтинг: 0 / 0
24.08.2016, 15:32
    #39297197
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
Dimitry SibiryakovНазвания "WPF" и "C#" неумолимо ограничивают СУБД ровно одной.
ограничивают не названия, а программисты
...
Рейтинг: 0 / 0
24.08.2016, 15:40
    #39297201
grok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
Dimitry SibiryakovНазвания "WPF" и "C#" неумолимо ограничивают СУБД ровно одной.

да ладно ?
не вижу проблему прицепить любую другую СУБД
...
Рейтинг: 0 / 0
24.08.2016, 18:52
    #39297313
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
grokmaytonКнига 2010 года по фреймворку имеет все шансы улететь в топку печки. Ибо нефиг.

Это вам не квантовая физика... а просто старый тухлый фреймворк.

что тогда не тухло щас для windows desktop applications ?
ну или не windows
Не знаю. Это моё IMHO в отношении любых фреймворков. 1.5-2 года. И нужна перезагрузка.
...
Рейтинг: 0 / 0
24.08.2016, 19:03
    #39297322
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
grokкнига "Pro WPF in C# 2010 By Matthew MacDonald"
явно не по конкретной БД
и не такая уж и старая, 2010г

полностью еще не читал, но на беглый взгляд чисто по WPF книга норм

Так это же специальная книга для C#-телепузиков, там им действительно можно как угодно программировать...
...
Рейтинг: 0 / 0
25.08.2016, 13:19
    #39297800
softwarer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
grokдействительно так ? кто что думает ?
Это одна из типичных глупостей трёхзвенщиков в рамках их любимого подхода "по неграмотности наплодить проблем, кое-как криво их решить и гордиться своим умом".

grokмне всегда казалось, что лучше один коннект иметь если ресурсов сервера жалко, можно делать timeout
У разных СУБД есть разные возможности и разные варианты конфигурации. У разных задач разные требования. То и другое склонно меняться со временем в ходе сопровождения одной и той же задачи. Поэтому выдача соединений - одна из тех задач, где практически необходим собственный менеджер. Даже если в первой реализации он будет сделан как тривиальная нашлёпка к стандартному - при изменении требований он сбережёт кучу сил и времени. Поэтому если статья "как правильно работать с connections" начинается с чего-нибудь типа Connection c = DriverManager.getConnection("jdbc:null", "vasya", "pupkin") - этой статье место в помойке независимо от дальнейшего содержания.

Как только разработчик начал думать о классе MyOwnConnectionManager, вышеизложенная мысль не то чтобы становится верной, но перестаёт быть безоговорочным бредом. С моей точки зрения, мысль автора остаётся мыслью пионера, обжёгшегося на молоке, но это уже не столь важно - важно понимать, что его quickly относится к MyOwnConnectionManager.getConnection() и MyOwnConnectionManager.releaseConnection(), а вот что делается внутри них и как это соотносится с реальным открытием-закрытием сессий - вопрос уже не к пионеристому программисту every method, а к более вдумчивому программисту системного класса.
...
Рейтинг: 0 / 0
20.09.2016, 19:00
    #39312213
grok
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
а вот тут еще один крутой специалист высказывает мнение

[youtube=
YouTube Video
...
Рейтинг: 0 / 0
20.09.2016, 20:03
    #39312255
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Коннект к БД
grokа вот тут еще один крутой специалист высказывает мнение
Долго высказывает, не досмотрел.
В соединении с БД может быть асинхронная работа, даже при однопоточной работе с БД, т.е. один запрос послан, часть ответа получена (остальное в стадии подготовке к отправке) и посылается второй запрос, тут происходит вылет, т.к. первый не закончен.
Решение простое: дочитывать все до конца, потом разрешать следующий запрос, так можно работать по одному соединению, иначе пул, т.е. если нет законченных - начать новое, и тогда один клиент может десяток соединений поднять, а то и больше. Десять-сто тысяч клиентов могут сервер уронить не запросами, а просто TCP-соединениями, которые тоже надо обслуживать.
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Коннект к БД / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]