我创建以下Scala中例如演员的邮箱扫描时间:http://pastebin.com/pa3WVpKy 没有节流(降低SendMoney消息数)发生在线路:在本试验如何提高Scala中演员
val processed = iterations - counter.getCount/2
if (processed < i - banksCount * 5) Thread.sleep(1)
消息处理是非常缓慢(尤其是银行演员很少时)。
这是因为参与者的邮箱中充满了SendMoney邮件,并且接收到ReadAccountResponse邮件需要很长时间(他们通常几乎在邮箱的末尾,并且必须扫描整个邮箱)。 如何在这种情况下提高邮箱扫描时间? 也许有可能将某些消息定义为高优先级? 拥有两个邮箱真是太棒了 - 一个用于常用邮件,另一个用于高优先级邮箱。可以先扫描高优先级邮箱。 “回复”方法也可以自动将邮件发送到高优先级邮箱。或者可能创建两个邮箱 - 用于常见的消息和响应? 你的想法是什么?
问候 沃伊切赫Durczyński
这是完美的答案。谢谢。 – 2010-11-03 07:47:05
有意投票重新启用半透明项目的人?请在此处投票:https://lampsvn.epfl.ch/trac/scala/ticket/3976 – 2010-11-03 11:02:44