我使用没有Masstransit的RabbitMQ,每秒发送10,000条消息,100秒内发送一百万条消息.
但在使用Masstransit与RabbitMQ后,我的机器性能非常低.
发布/使用消息时,硬盘非常活跃(使用率为99%),此过程的CPU活动几乎为0%.
使用此代码运行Publisher/Subscriber控制台应用程序时:
var bus = ServiceBusFactory.New(x =>
{
x.UseRabbitMq();
x.ReceiveFrom("rabbitmq://localhost/Example_Hello");
});
var message = new MyMessage() { Text = "hello", When = DateTime.Now };
for (int i = 0; i < 100; i++)
{
bus.Publish<MyMessage>(message, x => { });
}
Run Code Online (Sandbox Code Playgroud)
在6秒内发布了100条消息,我不知道为什么会很慢.
我的机器的配置和软件版本是:
Windows 8.1 64位
英特尔酷睿i3 3.30GHz
内存8GB
Visual Studio 2013 C#.Net 4.5.1
Erlang 6.3
RabbitMQ 3.4.4
Masstransit 2.9.9
RabbitMQ.Client 3.4.0