我们在AngularJS中构建了Web应用程序, ReBus 和NHibernate。在进行性能优化时, REDGATE的ANTS Profiler 显示执行 MessageQueue.StaleSafeReceiveMessage
所需的大部分时间Call Graph将如下所示,
消息队列花费更多时间,为什么会观察到这种行为,将此时间减少的可能选项是什么。 注意:我没有添加代码,因为对于所有情况,只有这部分花费90%的时间。
答案 0 :(得分:1)
我猜你正在观察的是工作线程在很短的时间内被阻塞,而它正在等待下一条消息可用。
如果队列中总是有消息,我怀疑在StaleSafeReceiveMessage
中花费的时间会大大减少。
换句话说,我认为这根本不是问题:)