0
私は、個人用のクライアント/サーバーメディアアプリケーションを構築しています。アプリケーションは動作しますが、接続ごとに2つのソケットがあります:1つはサーバー/クライアントコマンドと通信用です(JSON文字列を前後に送信するものとシリアル化されたメディアを送信するものです)。どのように多目的ソケットプロトコルを実装していますか?
2つのソケットを私は、データがどのようにあるか、彼らがそうであるように、それはよりよいちょうどそれらを残すことが何であるかを知っているファッション
@EvanTeran、brettwどのようにこのサポート生のバイナリストリーミングしていますか?私が知る限り、生のバイナリをJSON文字列に入れる方法はありません。明らかに、私はJSONメッセージを送ることができます、 'ねえ、クライアントはxxxバイナリデータを期待しています'が、これはメッセージ/バイナリデータの同期を扱っていません。 – AedonEtLIRA
JSONでエンコードされたバイナリデータを送信する場合は、おそらくbase64エンコーディングを使用します。シンプルで、データサイズの膨張が比較的小さい。 –
@EvanTeranアドバイスをいただきありがとうございます。私は単純なArrays.toString(byte [])を行い、再びベンチマークを行い、それをBase64と比較しました。あなたは勝つ。もう一度ありがとう、私はBas64の壮大さについては知らなかった。 – AedonEtLIRA