我正在使用RabbitMQ进行日常交易。我的使用者是部署在多台计算机上的.Net桌面应用程序。每天,交易仅在特定时间段内被排队。除此之外,任何新交易都需要硬停。我设法停止将新事务发送到队列。但是,队列中的现有事务也需要刷新,以便不发送给任何使用者。我尝试搜索此内容,但除了两个选项外,没有任何清除队列的解决方案-
这两种方法都可以实现,但是需要在我的系统上进行大量更改。我想知道是否有更好的方法。
小智 7
在C#中,您可以像这样清除队列
ConnectionFactory factory = new ConnectionFactory();
factory.HostName = "localhost";
factory.UserName = "guest";
factory.Password = "guest";
using (var connection = factory.CreateConnection())
{
using (var channel = connection.CreateModel())
{
channel.QueuePurge(queueName);
}
}
Run Code Online (Sandbox Code Playgroud)