9

Akka の EventBus はリモート アクターで動作しますか?

私が知る限り、これはネイティブにサポートされていません。誰でも確認できますか?

同様の機能を提供するいくつかのアクタをコーディングすることが可能であるように見えます。たとえば、リモート サーバー上の EventBus にサブスクライブするリモート アクターを起動し、メッセージをローカル アクターに送り返して、ローカル EventBus で再発行します。しかし、すでにサポートされている場合は、これを書く意味がありません!

ありがとう

4

1 に答える 1

11

EventBus 自体はローカルです。つまり、イベントは他のシステムの EventBuses に自動的に転送されませんが、リモートのものを含め、任意の ActorRef をサブスクライブできます。イベントが生成されるノードにアクターのみが必要です。

case class Subscribe(clazz: Class[_])
system.actorOf(Props(new Actor {
  def receive = {
    case Subscribe(c) =>
      context.system.eventStream.subscribe(sender, c)
  }
}), "eventer")

次に、リモートホストからそれを調べて、自分で購読することができます.

于 2012-11-22T07:02:42.017 に答える