2010-04-09 3 views
2

По какой-то причине для открытия соединения с базой данных SQL Server требуется время в течение 7 секунд, а последующие соединения занимают второе место. любая идея, что может быть причиной?Долгое время для загрузки первого соединения sql в .NET.

Я использую C# и ASP.NET

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

ответ

1

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

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

+0

Могу быть причиной, по которой я буду следить и обновлять. –

0

Это после компиляции каждый раз? Является ли «время ожидания» результатом компиляции JIT, а не самой SqlConnection?

+0

Я обновил свой вопрос, чтобы ответить на ваш вопрос, я коротко это компиляция. –

1

Первый раз, когда необходимо установить соединение, у которого много накладных расходов. Каждое последующее соединение использует пул соединений (при условии, что у вас есть одна и та же строка соединения), и первоначальная настройка не требуется.

Редактировать: см. this link или this one для получения информации о пуле соединений.

+0

Я понимаю причину, но я нигде не видел, что это займет 7 секунд. –

Смежные вопросы