私は、TCPを介してデータを送信するためにどのフォーマットを使用するべきかに関するアドバイスをしたいと思います。現在、私は区切られた文字列で単純なテキストプロトコルを考案しました。 XML、JSON、XMPPなどの既存のものを使うべきだと思っていますか?TCP経由でデータを送信するための形式は?
TCP経由で送信するためにどのようなデータ形式を使用しますか?
私はスピードとスループットを最適化したいと考えていますが、自分のものよりも既存の標準を採用したいと考えています。
私は、TCPを介してデータを送信するためにどのフォーマットを使用するべきかに関するアドバイスをしたいと思います。現在、私は区切られた文字列で単純なテキストプロトコルを考案しました。 XML、JSON、XMPPなどの既存のものを使うべきだと思っていますか?TCP経由でデータを送信するための形式は?
TCP経由で送信するためにどのようなデータ形式を使用しますか?
私はスピードとスループットを最適化したいと考えていますが、自分のものよりも既存の標準を採用したいと考えています。
あなたはGoogle Protocol BuffersかApache Thriftで見たいと思うかもしれません。
http://incubator.apache.org/thrift/ – Nosrama
ほとんどの場合、人々は両端で再現可能なレイアウトのレコードを宣言し、それを使用します。それよりももっと複雑なニーズがある場合にのみ、それ以上のことをする必要があります。
さまざまな長さの文字列については、長さとデータの長さのバイトとして実装するだけです。 Cishの言語では、ヌルターミネーターを利用することで、長さがなくてもおそらく得ることができます。それより複雑なものは本当に必要ありません。
データの種類とデータを使用している人によって異なります。
独自のクライアント/サーバーのペアを作成している場合は、間違いなく最適な形式はバイナリのシリアル化の一種です。コンパクトで、ワイヤーで簡単に伝送でき、素早く再構成できます。あなたは、さまざまな言語を使用して、多くの消費者のために何かを書いている場合は
...その後、私はXMLまたはJSON(あなたのデータのサイズと複雑さによって異なります)の詳細については心配だろう。
XMLは、大きく複雑なデータに適しています。
JSONは、小さくてコンパクトなデータに適しています。
XML - >大規模データ、JSON小データステートメントについて詳しく説明できますか? – JosefAssad
大量のデータをJSON経由で送信しようとすると、すぐに問題が発生します。 JSONの大きな部分を見て、問題をデバッグしようとするのは悪夢です。 XMLは、物事がより大きく複雑になり始めるときに、より構造化され、扱いやすくなります。 –
XMLは、データ型に対して良い選択のように聞こえる - そこにXMLライブラリの多くは、すでにそこだ(またはあなたの言語でもXML解析が内蔵されている場合があります)。それは離れて、ワイヤ上のバイナリエンコーディングから滞在する理由の一つですので、テキストベースなので
も、それが簡単に手で物事をデバッグすることができます。
どのような種類のデータを送信していますか? –
基本的にテキストです。 Name-> Nosrama、Country-> US、ID-> 2343 ... – Nosrama