Websphere MQ 使用 XMS.Net
Websphere MQ using XMS.Net
我想了解如何在以下场景中使用 Web sphere MQ:
1.How 我可以从队列中读取消息而无需从队列中删除该消息。
2. 我们有一个 web 应用程序,所以我们需要 Listener 来读取队列。有什么工具可以做到这一点吗?
是的,可以在不从队列中移除消息的情况下读取消息,这称为浏览。您将需要创建一个浏览器消费者来阅读消息。我在此处发布了代码片段,Tools\dotnet\samples\cs\xms\simple\wmq\SimpleQueueBrowser\SimpleQueueBrowser.cs
中也提供了相同的代码。
// Create connection.
IConnection connectionWMQ = cf.CreateConnection();
// Create session
ISession sessionWMQ = connectionWMQ.CreateSession(false, AcknowledgeMode.AutoAcknowledge);
// Create destination
IDestination destination = sessionWMQ.CreateQueue(queueName);
// Create consumer
IQueueBrowser queueBrowser = sessionWMQ.CreateBrowser(destination);
// Create message listener and assign it to consumer
MessageListener messageListener = new MessageListener(OnMessageCallback);
queueBrowser.MessageListener = messageListener;
// Start the connection to receive messages.
connectionWMQ.Start();
回调方法
static void OnMessageCallback(IMessage message)
{
try
{
// Display received message
Console.Write(message);
}
catch (Exception ex)
{
Console.WriteLine("Exception caught in OnMessageCallback: {0}", ex);
}
}
我想了解如何在以下场景中使用 Web sphere MQ:
1.How 我可以从队列中读取消息而无需从队列中删除该消息。 2. 我们有一个 web 应用程序,所以我们需要 Listener 来读取队列。有什么工具可以做到这一点吗?
是的,可以在不从队列中移除消息的情况下读取消息,这称为浏览。您将需要创建一个浏览器消费者来阅读消息。我在此处发布了代码片段,Tools\dotnet\samples\cs\xms\simple\wmq\SimpleQueueBrowser\SimpleQueueBrowser.cs
中也提供了相同的代码。
// Create connection.
IConnection connectionWMQ = cf.CreateConnection();
// Create session
ISession sessionWMQ = connectionWMQ.CreateSession(false, AcknowledgeMode.AutoAcknowledge);
// Create destination
IDestination destination = sessionWMQ.CreateQueue(queueName);
// Create consumer
IQueueBrowser queueBrowser = sessionWMQ.CreateBrowser(destination);
// Create message listener and assign it to consumer
MessageListener messageListener = new MessageListener(OnMessageCallback);
queueBrowser.MessageListener = messageListener;
// Start the connection to receive messages.
connectionWMQ.Start();
回调方法
static void OnMessageCallback(IMessage message)
{
try
{
// Display received message
Console.Write(message);
}
catch (Exception ex)
{
Console.WriteLine("Exception caught in OnMessageCallback: {0}", ex);
}
}