Заставить сервисного брокера быть менее агрессивным об обнаружении подозрительных сообщений?

Их называют ifdef или включают защиту.

При записи небольшой программы это могло бы казаться, что это не нужно, но поскольку проект растет, Вы могли намеренно или неумышленно много раз включать один файл, который может привести к компиляции, предупреждающей как переменная, уже объявленная.

#ifndef checks whether HEADERFILE_H is not declared.
#define will declare HEADERFILE_H once #ifndef generates true.
#endif is to know the scope of #ifndef i.e end of #ifndef

, Если не объявляется, что означает, #ifndef генерирует верный тогда только часть между #ifndef и #endif, выполняемым иначе нет. Это предотвратит от нового объявления идентификаторов, перечислений, структуры, и т.д.

6
задан Remus Rusanu 21 September 2009 в 23:56
поделиться

2 ответа

Нет, счетчик отката при обнаружении опасного сообщения жестко задан равным 5, и вы не можете его изменить. Но когда очередь отключена, в очереди возникает уведомление о событии BROKER_QUEUE_DISABLED . Вы можете подписаться на это событие и иметь обработчик, который либо уведомляет администратора, либо даже повторно включает очередь. Также приложение, вероятно, могло бы использовать что-то вроде внешнего механизма активации m, чтобы настроить размер пула потоков в соответствии со скоростью входящих сообщений.

Обновлено

В SQL Server 2008 R2 появилась новая опция. для ALTER / CREATE QUEUE :

POISON_MESSAGE_HANDLING(STATUS = OFF/ON)

Указывает, будет ли опасное сообщение обработка включена. По умолчанию ВКЛ.

Очередь с подозрительным сообщением. установка на OFF не будет отключен после пяти последовательных откаты транзакций. Это позволяет настраиваемая система передачи ядовитых сообщений будет определено приложением.

11
ответ дан 9 December 2019 в 22:37
поделиться

Алгоритм обнаружения ядов (на русском) http://www.queue.net.ru/2010/06/poison-message-detection-algorithm.html

0
ответ дан 9 December 2019 в 22:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: