Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Broker медленно обрабатывает очередь  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
В триггере на изменении таблицы Т отправляю в очередь сообщение.
На другом конце процедура выбирает сообщение, вызывает SQLCLR функцию, она обрабатывает текст взятый из модифицированной записи таблицы Т и пишет в другую таблицу.

Тестирую - все работает, блокировок нету.

Когда делаю массированный тест, генерируется 10 тыщ сообщений и затем еле-еле обрабатывается, да, выборка в процедуре активации идет по одному сообщению receive top(1).
31 июл 13, 12:47    [14642274]     Ответить | Цитировать Сообщить модератору
 Re: Broker медленно обрабатывает очередь  [new]
Гость333
Member

Откуда:
Сообщений: 3683
Winnipuh
еле-еле обрабатывается

Что это значит? Висят какие-то блокировки, ожидания? Или хранимки начинают долго работать? Сколько читателей у очереди?
31 июл 13, 12:54    [14642321]     Ответить | Цитировать Сообщить модератору
 Re: Broker медленно обрабатывает очередь  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
Гость333
Winnipuh
еле-еле обрабатывается

Что это значит? Висят какие-то блокировки, ожидания? Или хранимки начинают долго работать? Сколько читателей у очереди?


читателей 2: процедура активации в двух экземплярах
ну как медленно: я пустил тест, который создал 200 сообщений, потом просто выполняю select count(*) для очереди, и вижу, что уходит одно сообщене в 3-5 секунд.
И кстати, вчера я спрашивал о том, что не добавляется правило - это из-за блокировок, которые возникают в процессе обработки этой очереди.
Процедура читает из таблицы Т, затем апдейтит её же флжэком и пишет в таблицу Т1.
Подумал, может не стоит ставить два экземпляра процедуры активации? они ведь будут мешать одна другой блокировками
31 июл 13, 13:03    [14642372]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить