Здравствуйте, Tom, Вы писали:
Tom>А можно узнать на какое время. Tom>Т.е через какой промежуток времени соединение разорвётся?
Определяется настройками в ConnectionString. Подробности в документации
Tom>И в этом случае я понимаю, что между частями программы лучше передавать не конекшн а конекщнстринг?
Здравствуйте, Andrey_N, Вы писали:
AN>И еще, если вы используете Connection.Dispose() (ну или пользуетесь using), а не просто Connection.Close(), то Connection убивается и в пуле тоже. Это было в книжке по ADO.NET, и я не помню относится ли это только к SQLConnection или к OLEDBConnection тоже.
Если посмотреть Анакриной на SqlConnection.Dispose(), то там видно, что ничего такого не делается.
Hello, "Tom" > TK>Что-то около минуты > Надеюсь это шутка >
В большинстве случаев это реальность.
> TK>Естественно, что для каждого типа провайдера это будет разное время и настраиваться оно будет по своему. > Да понятно это. А при чём здесь провайдер если пул организует домен ?
При том, что у ODBC свой пул, у OLE DB свой. И ни о каких доменах они не вкурсе.
Posted via RSDN NNTP Server 1.4.6 beta
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
AVK>>Естественно. Первый то раз соединение нужно устанавливать в любом случае.
VD>Более того. Там нужно создавать пул, а это значит не одно соеденение, а несклько.
Вот гады!
Ну, допустим, решу я вдруг забросить пиратство и купить пару-тройку лицензий на подключение к SQL-серверу. Ага, и из-за этого гадского пулинга одна программа все подключения и сожрёт
Здравствуйте, shapkin, Вы писали:
S>Здравствуйте, Andrey_N, Вы писали:
AN>>И еще, если вы используете Connection.Dispose() (ну или пользуетесь using), а не просто Connection.Close(), то Connection убивается и в пуле тоже. Это было в книжке по ADO.NET, и я не помню относится ли это только к SQLConnection или к OLEDBConnection тоже.
S>Если посмотреть Анакриной на SqlConnection.Dispose(), то там видно, что ничего такого не делается.
Выдержка из MOC 2389, Module 2:Connecting to Datasources p 18:
When you close a connection, the flow to and from the data source closes, but
unmanaged resources used by the connection object have not been released. If
connection pooling is enabled, the connection is released to the pool. Both the
SqlConnection object and the OleDbConnection object have a Dispose
method to release the unmanaged resources. Calling the Dispose method
removes the connection from the connection pool.
Абсолютно согласен, что поведение Close() и Dispose() должно быть одинаковым (т.е. все возвращается в пул). И если это так в реальной системе, то спишем все на кривость учебников и будем радоваться.
Здравствуйте, mihailik, Вы писали:
M>Ну, допустим, решу я вдруг забросить пиратство и купить пару-тройку лицензий на подключение к SQL-серверу. Ага, и из-за этого гадского пулинга одна программа все подключения и сожрёт
M>Это же мировое вредительство!
Все как раз наоборот. Пул — это класный объод ограничения лиценизий. Дело в том, что запросы от пользователей идут не одновременно. И пула на 10 соеденений обычно достаточно чтобы держать приложение с 100 пользователей.
... << RSDN@Home 1.0 beta 4 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Все как раз наоборот. Пул — это класный объод ограничения лиценизий. Дело в том, что запросы от пользователей идут не одновременно. И пула на 10 соеденений обычно достаточно чтобы держать приложение с 100 пользователей.
А 20 с 1000
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, DemAS, Вы писали:
DAS>> Уверен ?
VD>Уверен. Там пул подключений. По сравнению с запросом к БД обращение к пулу полная фигня.
DAS>> У меня в одном методе усатнавливается коннект к БД, а во втором с помощью установленного коннекта делается запрос к БД. DAS>> Первая процедура работает гораздо дольше второй
VD>Попробуй сделать подключение прямо в этой процедуре. Увидишь что на второй и далее раз скорость будет такая как будто подключения нет.
А пул препарированных запросов, ассоциированных с конкретным подключение там есть?!
А по сравнению с запросом к БД, для которого обращение к пулу полная фигня (с), — обращение к заранее подготовленному (препарированному) запросу совершенно полная фигня (с). Быстродействие может различаться, особенно на довольно простых запросах, — на порядок.
Hello, "VladD2" > > Все как раз наоборот. Пул — это класный объод ограничения лиценизий. Дело в том, что запросы от пользователей идут не одновременно. И пула на 10 соеденений обычно достаточно чтобы держать приложение с 100 пользователей. > >
Да, одновременных соединений с SQL Server будет 10, а вот лицензий для этого все равно нужно 100.
Или лицензионные соглашения читать не принято?
iv. "Multiplexing." Hardware or software that reduces the number of Devices directly accessing or using the Server Software does not reduce the number of required CALs. The number you need is based on the number of distinct inputs to the hardware or software "front end."
Подробнее:
Licensing in Multi-Tier Environments (Including Multiplexing or Pooling)
Sometimes organizations develop network solutions that use various forms of hardware and/or software to reduce the number of devices that directly access or use the software on a particular server. This particular solution is often called multiplexing or pooling hardware or software. It is particularly common in multi-tier environments. For example, say a client computer is using a server application that calls Component Services, available with Microsoft Windows 2000 Server, on one server, which in turn pulls data from a SQL Server database on another server. In this case, the only direct connection to SQL Server is coming from the server running Component Services. The client computer has a direct connection to the server running Component Services, but the client computer also has an indirect connection to SQL Server because it is ultimately retrieving and using the SQL Server data through Component Services. Use of multiplexing or pooling hardware and/or software does not reduce the number of CALs required to access or use SQL Server. A CAL is required for each distinct input to the multiplexing or pooling software or hardware front end. If, in the above example, 50 client computers were connected to the server running Component Services, 50 SQL Server CALs would be required. This is true no matter how many tiers of hardware or software exist between the SQL Server and the client devices that ultimately use its data, services, or functionality.
Posted via RSDN NNTP Server 1.4.6 beta
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Здравствуйте, TK, Вы писали:
TK>Hello, "VladD2" >> >> Все как раз наоборот. Пул — это класный объод ограничения лиценизий. Дело в том, что запросы от пользователей идут не одновременно. И пула на 10 соеденений обычно достаточно чтобы держать приложение с 100 пользователей. >> >> TK>Да, одновременных соединений с SQL Server будет 10, а вот лицензий для этого все равно нужно 100. TK>Или лицензионные соглашения читать не принято?
TK>
TK>iv. "Multiplexing." Hardware or software that reduces the number of Devices directly accessing or using the Server Software does not reduce the number of required CALs. The number you need is based on the number of distinct inputs to the hardware or software "front end."
TK>Подробнее:
...
Без слёз умиления на это проявление перманентной жадности невозможно смотреть. Извиняюсь.
А если сервер приложений будет все данные сохранять в формате Word, а клиенты — затем их обрабатывать?
А если не будут обрабатывать, а только читать? Есть требование на количесво CALs для чтения вордовских документов?
А если я придумаю свой формат для данных и назову это документом? И т.д...
> TK>iv. "Multiplexing." Hardware or software that reduces the number of Devices directly accessing or using the Server Software does not reduce the number of required CALs. The number you need is based on the number of distinct inputs to the hardware or software "front end."
> TK>
> > Без слёз умиления на это проявление перманентной жадности невозможно смотреть. Извиняюсь. > > А если сервер приложений будет все данные сохранять в формате Word, а клиенты — затем их обрабатывать? > А если не будут обрабатывать, а только читать? Есть требование на количесво CALs для чтения вордовских документов? > А если я придумаю свой формат для данных и назову это документом? И т.д... >
А у прочих производителей иная политика? Некоторые даже один пень с HyperThreading за два считают
Posted via RSDN NNTP Server 1.4.6 beta
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
M>>В смысле, какие такие исходники ADO.NET? Разве их можно где-то достать? VD>Да. Периодически проскакивают. M>>Может Anakrino воспользоваться, или ILDASM'ом?.. Или в Mono посмотреть... VD>Можно и анакриной.
Так проскакивают или всё таки анакриной. И если следующий раз будут скакать может свистнешь ?
Здравствуйте, TK, Вы писали:
TK>Hello, "Tom" >> TK>Что-то около минуты >> Надеюсь это шутка >>
TK>В большинстве случаев это реальность.
>> TK>Естественно, что для каждого типа провайдера это будет разное время и настраиваться оно будет по своему. >> Да понятно это. А при чём здесь провайдер если пул организует домен ?
TK>При том, что у ODBC свой пул, у OLE DB свой. И ни о каких доменах они не вкурсе.
гм... опять таки весело... наверное всё таки стоит реализовать свой пул... что бы всегда была возможность управлять и временем жизни соединений и постановкой запросов в очередь итд. это ж вроде не особо сложно...
TK>iv. "Multiplexing." Hardware or software that reduces the number of Devices directly accessing or using the Server Software does not reduce the number of required CALs. The number you need is based on the number of distinct inputs to the hardware or software "front end."
Т.е. если на сайте стоит SQL Server, то все пользователи интернета являются источником CALs?
Если нам не помогут, то мы тоже никого не пощадим.
> TK>iv. "Multiplexing." Hardware or software that reduces the number of Devices directly accessing or using the Server Software does not reduce the number of required CALs. The number you need is based on the number of distinct inputs to the hardware or software "front end."
> TK>
> > Т.е. если на сайте стоит SQL Server, то все пользователи интернета являются источником CALs?
Естественно Для таких случаев есть схема лицензирования "на процессор".
Posted via RSDN NNTP Server 1.4.6 beta
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.