既存のサーバーに追加する簡単な投票キック オプションを作成しようとしています。
gen_server を使用するメッセージ ルーターがあり、これは を使用して接続されているすべてのクライアントを格納しますinit([]) -> {ok, dict:new()}
。ルーターは、gen_server でもある tcp サーバーとは別のものですが、ルーターに中継される tcp 要求を処理します。
「もの」は別々に処理/保存されているので、キックされるユーザー、投票者のリスト、およびそれが成功したかどうかを保存したいと思います。したがって、これは少なくともルーター内でグローバルである必要があり、理想的にはクライアントの辞書から分離する必要があります。
最善/理想的なアプローチに関するアイデアはありますか?
キックする人々をレコード構造 {kick, {Votes, Passed}} に格納する別の gen_server 「ルーター」を作成できると思いますが、それが理想的かどうかはわかりません。