4

そのため、C ++でサーバー/クライアントシステムを構築したいと考えています。Googleのプロトコルバッファまたは節約によって、より迅速にプロトタイプが機能するかどうかはわかりません。(ワイドインターネットではなく)ローカルサブネットを介した通信のために、通信層としてTCPソケットを使用したいと考えています。Linux / OS X/Windowsで動作します。

ほとんどの場合、各方向に渡される単純な非同期メッセージが必要ですが、将来的にはRPCスタイルの応答が必要になる可能性があります。私たちのメッセージのほとんどは小さいですが、いくつかは約100k〜500kの大きなペイロードを持ちます(IDLでそれらを呼び出す必要がある場合、それらはメッセージに付随する大きな不透明なバッファーになります)。

両方が提供するメッセージ記述子/マーシャリング/アンマーシャリングが必要なことはわかっていますが、動作するサーバー/クライアントを最も迅速に構築するために必要な他の部分についてはよくわかりません。

プロトコルバッファはマーシャリング層のみを扱い、ソケットについて何も知らないのに対し、thriftはメッセージを送受信するためのTCP / IPソケット通信の実装を提供するということを収集するのは正しいですか?

それが実際に当てはまる場合は、プロトコルバッファを使用して、メッセージの周りにいくつかのヘッダーやフッターをラップして、1つが停止し、次のプロトコルが来るときに開始する場所を特定するために、その上にミニプロトコルを作成する必要があります。ソケットを介して(そして、何かが予想よりも長い/短い場合の再同期のより難しい問題)。これらのレイヤーを提供する(できればを使用してboost::asio)オープンソースパッケージはありますか?

4

0 に答える 0