MSMQ. Исчезающие сообщения.
От: SergeyAlekseev  
Дата: 06.04.04 16:15
Оценка:
Добавляю сообщения в private queue. После того как перезагружаю компьютер — эти сообщения в очереди отсутствуют. Может кто-то сталкивался с такой ситуацией? Никакие приложения в этот момент с очередью не работают. Есть подозрения, что это может быть связано с ошибками, возникающими при загрузке MSMQ:
Unable to complete Message Queuing Setup. Hresult- c00e0075h
и
Message Queuing was unable to join the local Windows 2000 domain. Hresult- c00e0075h
Re: MSMQ. Исчезающие сообщения.
От: Pavel Kalyakin http://www.livejournal.com/users/pavelk/
Дата: 07.04.04 08:43
Оценка: 1 (1)
Здравствуйте, SergeyAlekseev, Вы писали:

SA>Добавляю сообщения в private queue. После того как перезагружаю компьютер — эти сообщения в очереди отсутствуют. Может кто-то сталкивался с такой ситуацией? Никакие приложения в этот момент с очередью не работают. Есть подозрения, что это может быть связано с ошибками, возникающими при загрузке MSMQ:

SA>Unable to complete Message Queuing Setup. Hresult- c00e0075h
SA>и
SA>Message Queuing was unable to join the local Windows 2000 domain. Hresult- c00e0075h
Начнем с того, что если очередь не транзакционная, то исчезание сообщений из нее при перезагрузке вполне штатное поведение.
Что касается ошибок — именно с такими я не сталкивался.
Сам по себе MSMQ может быть установлен в 2 режимах — локальном и подключенном к AD. Во втором режиме MSMQ должен быть также установлен на DC и public очереди регистрируются в AD и становятся доступными в рамках домена. Проблема может быть в том, MSMQ на DC не стоит.
Pavel Kalyakin, MCP, Senior Programmer of Actis Systems Internet http://www.actis.ru
Павел Калякин, MCDS.NET, MCS
http://www.livejournal.com/users/pavelk — Мой блог
Re[2]: MSMQ. Исчезающие сообщения.
От: igor_RU  
Дата: 12.04.04 10:19
Оценка:
Здравствуйте, Pavel Kalyakin, Вы писали:

PK>Здравствуйте, SergeyAlekseev, Вы писали:


SA>>Добавляю сообщения в private queue. После того как перезагружаю компьютер — эти сообщения в очереди отсутствуют. Может кто-то сталкивался с такой ситуацией? Никакие приложения в этот момент с очередью не работают. Есть подозрения, что это может быть связано с ошибками, возникающими при загрузке MSMQ:

SA>>Unable to complete Message Queuing Setup. Hresult- c00e0075h
SA>>и
SA>>Message Queuing was unable to join the local Windows 2000 domain. Hresult- c00e0075h
PK>Начнем с того, что если очередь не транзакционная, то исчезание сообщений из нее при перезагрузке вполне штатное поведение.
PK>Что касается ошибок — именно с такими я не сталкивался.
PK>Сам по себе MSMQ может быть установлен в 2 режимах — локальном и подключенном к AD. Во втором режиме MSMQ должен быть также установлен на DC и public очереди регистрируются в AD и становятся доступными в рамках домена. Проблема может быть в том, MSMQ на DC не стоит.

А как его установить локально?
Я создаю очередь следующим образом:

MessageQueue messageQueue = new MessageQueue(@"MyComputer\Private$\test");
messageQueue.Send("test");

На Send() получаю exception "Queue is not registered in the DS". Похоже, речь идет о MSMQ на DC? Хотелось бы использовать MQ локально. Это возможно?

Спасибо.
Re[3]: MSMQ. Исчезающие сообщения.
От: Pavel Kalyakin http://www.livejournal.com/users/pavelk/
Дата: 14.04.04 08:54
Оценка:
Здравствуйте, igor_RU, Вы писали:

_RU>MessageQueue messageQueue = new MessageQueue(@"MyComputer\Private$\test");

_RU>messageQueue.Send("test");
_RU>На Send() получаю exception "Queue is not registered in the DS". Похоже, речь идет о MSMQ на DC? Хотелось бы использовать MQ локально. Это возможно?
Конечно возможно. Удалите MSMQ с компьютера и поставьте заново через Add\Remove Programs. На этапе установки у вас спросят, как будем ставить — локально или регистрировать в AD. Говорите, что локально и ставите.

Лично я при подключении к очередям пишу так
MQ = new MessageQueue("FormatName:DIRECT=OS:" + m_queueName);
Pavel Kalyakin, MCP, Senior Programmer of Actis Systems Internet http://www.actis.ru
Павел Калякин, MCDS.NET, MCS
http://www.livejournal.com/users/pavelk — Мой блог
Re[4]: MSMQ. Исчезающие сообщения.
От: igor_RU  
Дата: 14.04.04 09:21
Оценка:
Здравствуйте, Pavel Kalyakin, Вы писали:

PK>Здравствуйте, igor_RU, Вы писали:


_RU>>MessageQueue messageQueue = new MessageQueue(@"MyComputer\Private$\test");

_RU>>messageQueue.Send("test");
_RU>>На Send() получаю exception "Queue is not registered in the DS". Похоже, речь идет о MSMQ на DC? Хотелось бы использовать MQ локально. Это возможно?
PK>Конечно возможно. Удалите MSMQ с компьютера и поставьте заново через Add\Remove Programs. На этапе установки у вас спросят, как будем ставить — локально или регистрировать в AD. Говорите, что локально и ставите.

PK>Лично я при подключении к очередям пишу так

PK>MQ = new MessageQueue("FormatName:DIRECT=OS:" + m_queueName);

Дело в том, что я устанавливал MQ через Add Windows Components -> Message Queuing. А настроек там нет.
Правда есть отдельный конмонент Message Queuing->AD Integration. Он у меня отключен.
Нужно что-то поставить отдельно?
Попробовал предложенный пример:
MessageQueue MQ = new MessageQueue("FormatName:DIRECT=OS:Test_Queue");
MQ.Send("test message");
На Send получил exception "Format name is invalid".
Re[5]: MSMQ. Исчезающие сообщения.
От: Pavel Kalyakin http://www.livejournal.com/users/pavelk/
Дата: 15.04.04 07:22
Оценка:
Здравствуйте, igor_RU, Вы писали:

_RU>Дело в том, что я устанавливал MQ через Add Windows Components -> Message Queuing. А настроек там нет.

_RU>Правда есть отдельный конмонент Message Queuing->AD Integration. Он у меня отключен.
_RU>Нужно что-то поставить отдельно?
Честно говоря, затрудняюсь ответить. Когда я устанавливал MSMQ, у меня точно спрашивали режим, в котором он будет устанавливаться.

_RU>Попробовал предложенный пример:

_RU>MessageQueue MQ = new MessageQueue("FormatName:DIRECT=OS:Test_Queue");
MessageQueue MQ = new MessageQueue("FormatName:DIRECT=OS:MyComputer\Private$\test");
Pavel Kalyakin, MCP, Senior Programmer of Actis Systems Internet http://www.actis.ru
Павел Калякин, MCDS.NET, MCS
http://www.livejournal.com/users/pavelk — Мой блог
Re[6]: MSMQ. Исчезающие сообщения.
От: igor_RU  
Дата: 15.04.04 08:27
Оценка:
Здравствуйте, Pavel Kalyakin, Вы писали:

PK>Здравствуйте, igor_RU, Вы писали:


_RU>>Дело в том, что я устанавливал MQ через Add Windows Components -> Message Queuing. А настроек там нет.

_RU>>Правда есть отдельный конмонент Message Queuing->AD Integration. Он у меня отключен.
_RU>>Нужно что-то поставить отдельно?
PK>Честно говоря, затрудняюсь ответить. Когда я устанавливал MSMQ, у меня точно спрашивали режим, в котором он будет устанавливаться.

_RU>>Попробовал предложенный пример:

_RU>>MessageQueue MQ = new MessageQueue("FormatName:DIRECT=OS:Test_Queue");
PK>MessageQueue MQ = new MessageQueue("FormatName:DIRECT=OS:MyComputer\Private$\test");
Спасибо! Помогло.
Я переустановил MQ, отключил AD Integration.
Но с форматом ты меня удивил. Что-т про это нигде не написано :)
Кстати, перечитал MSDN. Там оказывается написано какие функции и когда можно использовать для домена и для локального компьютера. Оказывается локально можно работать только с Private$ очередями. И все функции с Public в названии для локального использования запрещены. Но Send можно пользовать во всех случаях. Главное, чтобы очередь была создана как Private$.
В любом случае, спасибо за помощь.
Re[6]: MSMQ. Исчезающие сообщения.
От: igor_RU  
Дата: 16.04.04 09:36
Оценка:
Здравствуйте, Pavel Kalyakin, Вы писали:
PK>Здравствуйте, igor_RU, Вы писали:
PK>MessageQueue MQ = new MessageQueue("FormatName:DIRECT=OS:MyComputer\Private$\test");

Прошу прощения за наглось :) Но может Вы знакомы еще и с Peer-to-Peer (microsoft p2p sdk)?
Я пишу приложение, которому нужна событийная система P2P (появление нового, обмен данными, регистрация и др.).
Проблема с Cloud. При создании группы (PeerGroupCreate) требуется указать название Cloud. При присоединении к группе (Join) тоже требуется Cloud. Если сущности на разных компах в LAN, то, соответственно, cloud-ы не совпадают.
Т.е. объединить из в группу нельзя? Может есть что-то типа Default Cloud?

Что-т на форуме никто про P2P не говорит и не отвечает.

Спасибо.
Игорь.
Re[7]: MSMQ. Исчезающие сообщения.
От: Pavel Kalyakin http://www.livejournal.com/users/pavelk/
Дата: 19.04.04 08:50
Оценка:
Здравствуйте, igor_RU, Вы писали:

_RU>Прошу прощения за наглось Но может Вы знакомы еще и с Peer-to-Peer (microsoft p2p sdk)?

Нет, не приходилось как-то...
Pavel Kalyakin, MCP, Senior Programmer of Actis Systems Internet http://www.actis.ru
Павел Калякин, MCDS.NET, MCS
http://www.livejournal.com/users/pavelk — Мой блог
Re[7]: MSMQ. Исчезающие сообщения.
От: Pavel Kalyakin http://www.livejournal.com/users/pavelk/
Дата: 19.04.04 08:55
Оценка:
Здравствуйте, igor_RU, Вы писали:
_RU>Но с форматом ты меня удивил. Что-т про это нигде не написано
Пусти поиск по такому формату на msdn.microsoft.com.
Там на самом деле форматов очень много.
_RU>В любом случае, спасибо за помощь.
Не забудь звать Dispose у всего, что связано с MSMQ.
Pavel Kalyakin, MCP, Senior Programmer of Actis Systems Internet http://www.actis.ru
Павел Калякин, MCDS.NET, MCS
http://www.livejournal.com/users/pavelk — Мой блог
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.