私は、ソケット、スレッド(多分)、およびasycoreモジュール(多分)の使用方法を学ぶためにグループチャットアプリケーションを開発しています。私の考えは、クライアントがサーバーに接続すると、サーバーがクライアントに他の接続のリスト(他のクライアントの「ユーザー名」、ip addres)を送信し、人が1つ以上に接続できるようにするクライアントサーバーアーキテクチャを持っていることでした。一度に人がいて、サーバーはクライアント間にP2P接続をセットアップします。ソケット部分は機能していますが、サーバーは一度に1つのクライアント接続しか処理できません。
複数の接続を処理するための最良の、最も一般的な、実用的な方法は何でしょうか?新しい接続がサーバーに接続されてから異なるクライアント接続を接続するたびに新しいプロセス/スレッドを作成しますか、それともサーバーが同じデータを複数のソケット(接続)に送信するようにするasycoreモジュールを使用しますか?データの行き先を調整するだけです。
どんな助け/考え/アドバイスもいただければ幸いです。