Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3   вперед  Ctrl      все
 Re: вопрос про таймауты  [new]
Konst_One
Member

Откуда:
Сообщений: 11680
fduch f.f.
приходит 10 -20 бач реквестов в секунду
среди них есть запросы на выборку большого кол-ва строк


ну так, может ваше приложение недофетчивает все данные до конца, вот и ожидания возникают
8 авг 16, 17:00    [19516804]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
o-o
Guest
Konst_One
fduch f.f.
приходит 10 -20 бач реквестов в секунду
среди них есть запросы на выборку большого кол-ва строк


ну так, может ваше приложение недофетчивает все данные до конца, вот и ожидания возникают

у него не ожидание возникает,
а висят процессы в runnable виде.
ожидались бы недофетченные, не в runnable болтался бы,
а suspended с ожиданием ASYNC_NETWORK_IO
8 авг 16, 17:05    [19516834]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
Konst_One
Member

Откуда:
Сообщений: 11680
я что-то не уверен, что табличка, что выложена выше, отражает текущую реальность, может в тот момент вообще не было запросов на сервере. лучше бы ТС настроил перформанс монитор на для SQL и посмотрел в комплексе, что там и как, а то гадание на кофейной гуще.
8 авг 16, 17:09    [19516855]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 9169
А сколько ядер использует сервер и сколько запросов разом выполняется?
8 авг 16, 17:11    [19516866]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
fduch f.f.
Member

Откуда: Белокаменная
Сообщений: 260
Владислав Колосов
А сколько ядер использует сервер и сколько запросов разом выполняется?


4 ядра
запросов одновременно вижу не более 10
select * from sys.dm_exec_requests where session_id>55
8 авг 16, 17:48    [19517053]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
o-o
Guest
fduch f.f.
запросов одновременно вижу не более 10
select * from sys.dm_exec_requests where session_id>55

а откуда 55?
раньше системные процессы были по 50,
но давно уже какие угодно,
фильтровать юзерские можно в sys.dm_exec_sessions,
по is_user_process = 1.
но просто интересно, почему именно 55?
8 авг 16, 17:57    [19517091]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
fduch f.f.
Member

Откуда: Белокаменная
Сообщений: 260
o-o
fduch f.f.
запросов одновременно вижу не более 10
select * from sys.dm_exec_requests where session_id>55

а откуда 55?
раньше системные процессы были по 50,
но давно уже какие угодно,
фильтровать юзерские можно в sys.dm_exec_sessions,
по is_user_process = 1.
но просто интересно, почему именно 55?


с использованием is_user_process = 1 картина таже
все session_id попрежнему > 55
select *
from sys.dm_exec_requests r 
join sys.dm_exec_sessions s on r.session_id = s.session_id
where is_user_process = 1
8 авг 16, 18:22    [19517162]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 9169
fduch f.f.
Владислав Колосов
А сколько ядер использует сервер и сколько запросов разом выполняется?


4 ядра
запросов одновременно вижу не более 10
select * from sys.dm_exec_requests where session_id>55


Значит просто ядер мало. Даже если установить MaxDegreeOfParallelism=1 будет значительно процессор занят.
9 авг 16, 11:56    [19519475]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
o-o
Guest
select  scheduler_id,
        current_tasks_count, 
        runnable_tasks_count
from    sys.dm_os_schedulers 
where   scheduler_id < 255 
        and [status] = 'visible online'

runnable_tasks_count - ?
9 авг 16, 15:12    [19520564]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
fduch f.f.
Member

Откуда: Белокаменная
Сообщений: 260
o-o
select  scheduler_id,
        current_tasks_count, 
        runnable_tasks_count
from    sys.dm_os_schedulers 
where   scheduler_id < 255 
        and [status] = 'visible online'

runnable_tasks_count - ?



сегодня нагрузка больше чем вчера

К сообщению приложен файл. Размер - 2Kb
9 авг 16, 15:54    [19520739]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
Konst_One
Member

Откуда:
Сообщений: 11680
The “runnable_tasks_count” value indicates the count of workers that have tasks assigned to them that are just waiting for their share of time on the scheduler (logical CPU).

должно быть 0, если CPU хватает
9 авг 16, 16:13    [19520845]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
o-o
Guest
не, ну 1,2,3 это ничего.
когда перевалит за десятку -- нехорошо
9 авг 16, 16:19    [19520891]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
Konst_One
Member

Откуда:
Сообщений: 11680
у нас на серверах по 0
9 авг 16, 16:19    [19520896]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
fduch f.f.
Member

Откуда: Белокаменная
Сообщений: 260
но все равно что бы таймаут случился это же надо что бы он целых 30 сек в runnable висел
9 авг 16, 16:21    [19520905]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
o-o
Guest
fduch f.f.
но все равно что бы таймаут случился это же надо что бы он целых 30 сек в runnable висел

да ну.
30 секунд дается на то, чтобы сервер хоть что-то вернул клиенту.
не вернул, вываливается таймаут.
при чем же тут висение именно в runnable?
может преспокойно висеть в suspended с любым ожиданием
9 авг 16, 16:35    [19520966]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 9169
При таких потребностях надо добавлять от 4 до 8 ядер. Но тогда в диски упрётесь и в сетевой драйвер. Похоже, что сервер - это персоналка?
9 авг 16, 17:03    [19521103]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
fduch f.f.
Member

Откуда: Белокаменная
Сообщений: 260
Владислав Колосов
При таких потребностях надо добавлять от 4 до 8 ядер. Но тогда в диски упрётесь и в сетевой драйвер. Похоже, что сервер - это персоналка?


он не у нас расположен
скорее всего виртуалка
9 авг 16, 17:15    [19521193]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
o-o
Guest
fduch f.f.
скорее всего виртуалка

в @@version пишет винду и какой-нибудь (Hypervisor).
но еще раз, не такие уж и критические значения у вас.
а приложение кривое, да.
убирать надо было таймаут
9 авг 16, 17:37    [19521320]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
fduch f.f.
Member

Откуда: Белокаменная
Сообщений: 260
o-o
fduch f.f.
скорее всего виртуалка

в @@version пишет винду и какой-нибудь (Hypervisor).
но еще раз, не такие уж и критические значения у вас.
а приложение кривое, да.
убирать надо было таймаут


все верно Hypervisor

если убрать таймаут, то что произойдет например если инстанс будет к примеру перезагружен?
по идее в таком случае клиенты зависнут на неопределенное время
9 авг 16, 17:57    [19521403]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
Konst_One
Member

Откуда:
Сообщений: 11680
разбирайтесь со своими клиентскими прогами, они должны за отвечать. пусть разработчики озоботятся всех необходимых ошибок и исключений
9 авг 16, 17:59    [19521414]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
Konst_One
Member

Откуда:
Сообщений: 11680
озаботятся обработкой
9 авг 16, 17:59    [19521422]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
fduch f.f.
Member

Откуда: Белокаменная
Сообщений: 260
Konst_One
разбирайтесь со своими клиентскими прогами, они должны за отвечать. пусть разработчики озоботятся всех необходимых ошибок и исключений

согласен, остается только делать повторный запрос в случае таймаута
9 авг 16, 18:00    [19521423]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 9169
fduch f.f.,

попробуйте на всякий случай

EXEC sp_configure 'show advanced options', 1
RECONFIGURE
GO

EXEC sp_configure 'max degree of parallelism', 1
RECONFIGURE


Это установит ограничение параллельного выполнения до 1 ядра.
9 авг 16, 18:13    [19521476]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
o-o
Guest
Зачем бы это пакостить на уровне инстанса-то?
И даже если запретить параллелить, что бы это решило? Ну не выполняется у него что-то за 30 секунд даже распараллеленное, теперь что, сериальное вдруг выполнится? Вот бы все для *ускорения* выполнения убирали нафиг параллелизм
9 авг 16, 19:04    [19521679]     Ответить | Цитировать Сообщить модератору
 Re: вопрос про таймауты  [new]
o-o
Guest
fduch f.f.
если убрать таймаут, то что произойдет например если инстанс будет к примеру перезагружен?
по идее в таком случае клиенты зависнут на неопределенное время

Не зависнут.
Соединение разорвется, получат ошибку.
Ну так и с таймаутом получают
9 авг 16, 19:08    [19521699]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить