多くのクライアントに同じオブジェクトを送信できるサーバーを設計する必要があります。クライアントは、データベース内の何かを更新したい場合、サーバーに何らかの要求を送るかもしれません。混乱しているクライアントが頻繁にメッセージを送信しないマルチクライアントサーバーアプリケーションを設計する
もの:
私のサーバーは、プログラム開始する必要があります(私はいくつかの操作を実行すると「結果」をもたらすが、これはクライアントに送信されます)。
私のサーバーは、クライアントからの着信接続を受け入れる必要がある場合はそれを受け入れ、「結果」の送信を開始する必要があります。
サーバーは、できるだけ多くのクライアントを受け入れる必要があります(100以下)。
私の「結果」を保護する必要があります。私はいくつかの人が私の '結果'を取って、私のプログラムロジックがどのように見えるかを見てほしくない。
私は1つのスレッドと思っています。ポイント2は、別のスレッドであり、ポイント3を提供するためにスコープ内に複数のスレッドを作成します。ポイント4は、サーバーではなく「結果」をシリアライズしながら、アプリケーションロジックによって取得される必要があります。
悪い考えですか?もしそうなら、どこで改善できますか?スレッド上のすべての接続を置く
おかげ
独自の通信プロトコル/シリアル化を書く必要があるのはなぜですか?私はブーストシリアル化とTCP/IPを使用する予定です。これらを使うと何がうまくいかないでしょうか? – Kid
@Kidあなたは誰もあなたが使っているロジックを知りたくないと言った。それが唯一の理由です。これはあなたが引き離したい "秘密"のレベルによって決まります。 –
私の質問がばかだと私を許してください。私は暗号化をブーストSSLを使って行いますが、tcp/ipを使用しています。私がTCPに固執しているのは、パケットの配送とその注文を処理するからです。 – Kid