MSMQ: Что может вызвать ошибку «Недостаточно ресурсов для выполнения операции» при получении из очереди? - PullRequest
29 голосов
/ 14 ноября 2009

MSMQ: Что может вызвать ошибку «Недостаточно ресурсов для выполнения операции» при получении из очереди?

В то время в очереди было только 2000 сообщений, каждое из которых размером около 5 КБ.

Ответы [ 5 ]

35 голосов
/ 21 января 2014

У меня было то же сообщение об ошибке, и решение было простым.

В разных очередях было много сообщений, и были достигнуты пределы хранения. Я пошел к:

  • Диспетчер серверов -> Функции

  • Щелкните правой кнопкой мыши очередь сообщений

  • Выбранные свойства

  • На вкладке «Общие» снимите флажки для пределов хранения

Мне сообщили, что службы, использующие MSMQ , будут перезапущены , а затем ошибка исчезнет.

29 голосов
/ 14 ноября 2009

Из блога Джона Брейквелла есть одиннадцать возможностей:

  1. Пул потоков для удаленного чтения исчерпан (только MSMQ 2.0).
  2. Превышено количество локальных обратных вызовов
  3. Превышен объем сообщений что система может обрабатывать (MSMQ 2.0 только).
  4. Память ядра в выгружаемом пуле истощены.
  5. Несоответствующие двоичные файлы.
  6. Размер сообщения слишком велик.
  7. Превышена квота машины.
  8. Проблемы с маршрутизацией при открытии транзакционная внешняя очередь (MSMQ Только 3,0)
  9. Недостаток дискового пространства.
  10. Проблемы с памятью на мобильных устройствах
  11. Кластеризация слишком большого количества ресурсов MSMQ
  12. Слишком много открытых соединений
  13. Имя компьютера было длиннее 15 символов
  14. Слишком много сообщений в очереди недоставленных сообщений

http://blogs.msdn.com/johnbreakwell/archive/2006/09/18/761035.aspx

Я бы проверил версию вашей очереди и количество подключений (к и от) вашей очереди, открытых в момент ошибки. Любой из этих «мог» вызвать вашу ошибку.

16 голосов
/ 10 апреля 2014

В моей исходящей очереди слишком много сообщений с ошибками. Проверьте Системные очереди -> Сообщения о недоставленных письмах. Я очистил эту очередь, и она снова заработала.

1 голос
/ 01 мая 2019

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

1 голос
/ 12 сентября 2018

Я столкнулся с той же ошибкой, после проверки вышеупомянутых вещей выяснилось, что именно имя компьютера вызывало проблему! Это было длиннее 15 символов, после того как я сменил его на более короткий, проблема исчезла.

...