# 第9章 メッセージのルーティング #### 疑問 #### 感想 ## 9.1 EIPのルーターパターン #### 疑問 #### 感想 - 前章で挙がった Scatter-Gather や Routing Slip が、 Composed Routers = 複数の *Simple Routers* を組み合わせによる複雑なメッセージフローとして、EIPでは紹介されている - EIP7章(Chapter7. Message Routing) - > Simple Routers are variants of the Message Router (78) and route messages from one inbound channel to one or more outbound channels. - > Composed Routers combine multiple simple routers to create more complex message flows. - > Architectural Patterns describe architectural styles based on Message Routers (78). ## 9.2 Akkaのルーターを使った負荷分散 #### 疑問 #### 感想 - グループルーターの場合、ルーティのactor pathの命名規則を定めておかないといけない気がする - リサイズのときにぶつかるとまずい場合があるかも - > 本項で説明したように、グループのルーティーを動的に変更することは可能ですが、数多くの落とし穴があるため、利用はなるべく控えてください。(P.240) - 紹介されたルータの使い分け - プールルータ: スケールイン/アウトしたい場合 - グループルータ: 並列度が固定で良い場合 - consistent hasingルータ: 複数のメッセージによって処理が完結する場合 - 言うほど `pressure-threshold = 0` のケースは特殊というわけでも無い印象 - 前段の説明・定義からすると「そりゃそうだね」ぐらい ## 9.3 アクターを使ったルーターパターンの実装 #### 疑問 #### 感想 - 「内容ベースのルーティング」が、EIPで言うところの Content-Based Routerっぽい - フィールドを適宜書き換えてif分岐ではなく、 `become` / `unbecome` で振る舞いを直接動的にスイッチするのユニーク - 「振る舞いを変更する」という意味では、ある意味では直接で「シンプル」的かもしれない ## 9.4 まとめ #### 疑問 #### 感想 - 章の冒頭で言うほどEIP(におけるルーティングパターン)の話してない感 ###### tags: `Akka本読書会`