Операция SQL Server "Audit Logout" занимает много времени.

У нас есть хранимая процедура, которая вызывается примерно 300 000 раз в день 15 пользователями в течение дня. Я просмотрел каждую строку, и она настолько эффективна, насколько я могу.

Доступ к хранимой процедуре осуществляется через страницу ASP.NET на 4.0 из унаследованного приложения VB6 на базовом Winterms.

Когда я смотрю на файл трассировки SQL, я вижу следующее:

  1. exec sp_reset_connection (Использование пула соединений)
  2. Audit Login
  3. Выполнение хранимой процедуры
  4. Audit Logout

Я вижу на шаге 4, что чтение и запись очень высоки, что имеет смысл, поскольку это накопление соединений, повторно используемых в пуле.

Меня беспокоит то, сколько времени это занимает, иногда 50 мс, а иногда 400 мс, это совершенно случайно. Из документации я прочитал, что "Audit Logout" - это полная продолжительность всех трех шагов. Но шаги 1-3 были очень быстрыми, примерно 0-5 мс. Почему "Audit Logout" длится так долго?

13
задан Kiley Naro 5 December 2011 в 22:52
поделиться