MSMQ: Что может вызвать ошибку «Недостаточно ресурсов для выполнения операции» при получении из очереди?
В то время в очереди было только 2000 сообщений, каждое из которых было размером около 5 КБ.
MSMQ: Что может вызвать ошибку «Недостаточно ресурсов для выполнения операции» при получении из очереди?
В то время в очереди было только 2000 сообщений, каждое из которых было размером около 5 КБ.
Из блога Джона Брейквелла есть одиннадцать возможностей:
http://blogs.msdn.com/johnbreakwell/archive/2006/09/18/761035.aspx
Я бы проверил версию вашей очереди и количество подключений (к и от) вашей очереди, открытых во время ошибки. Любой из этих "мог" вызвать вашу ошибку.
MessageQueue
объект считается соединением, поэтому вам нужно Dispose
их.
- person Jonathan Allen; 28.02.2017
У меня было такое же сообщение об ошибке, и решение было простым.
В разных очередях находилось много сообщений, и были достигнуты ограничения на хранение. Я пошел в:
Диспетчер сервера - ›Возможности
Щелкнул правой кнопкой мыши очередь сообщений
Выбранные свойства
На вкладке "Общие" снимите флажок с лимитов хранилища.
Мне сообщили, что службы, использующие MSMQ, будут перезапущены, после чего ошибка исчезла.
Computer Managment
- ›Message Queuing
, щелкните правой кнопкой мыши -› Properties
- person inwenis; 18.09.2017
В моей исходящей очереди было слишком много неудачных сообщений. Проверьте Системные очереди -> Сообщения недоставленных писем. Я очистил эту очередь, и она снова заработала нормально.
Если ведение журнала включено, вы будете хранить копии всех сообщений, удаленных из очереди, поэтому вы также можете достичь предела журнала MSMQ. Кратковременное исправление может заключаться в очистке журналов для очереди, более долгосрочное - отключение журналов.
Я столкнулся с той же ошибкой, после проверки вещей, упомянутых выше, выяснилось, что причиной проблемы было имя компьютера! Он был длиннее 15 символов, после того как я заменил его на более короткий, проблема исчезла.
Для меня проблема была не в машине, на которой размещалась очередь. Это была машина, которая отправляла сообщение в очередь. Я заметил, что «Исходящие очереди» на исходном компьютере показывают большое количество сообщений, что привело меня к Сообщения MSMQ застревают в исходящей очереди. Для меня это исправила переустановка MSMQ на исходном компьютере.