2

物理デバイスとその状態を表すアクターを作成しています。デバイスがオンラインになると、アクターのパスに識別メッセージを送信して「オンデマンド」で作成し、まだ存在しない場合は作成します。潜在的に、これらのデバイスが数百万個存在する可能性があります。

私の懸念は、アクターの数が増えると、Identify ルックアップのパフォーマンスが低下することです。これは正当な懸念事項ですか?

ルーター戦略を使用してアクターをセグメント化することを検討していましたが、ルーターのワイルドカードを使用してパスを検索すると、各ルーターから ActorIdentities が得られることがわかりました。ConsistentHashingRouter がこのシナリオに適していると思いますが、そのうさぎの穴に入る前に、時期尚早に最適化していないことを確認したいだけです。

4

1 に答える 1

2

アクターを作成するエンティティはその親のみです (他の方法はありません)。つまり、その親アクターはまったく使用する必要がなくIdentify、チェックするだけcontext.child(name).isDefinedです。これは非常に効率的ですが、本当に多数のデバイスがある場合は、複数の親にまたがってデバイスをシャーディングすることをお勧めします。

于 2013-10-02T22:29:27.200 に答える