2011-02-04 14 views
0

私は経験豊富なC/C++アプリケーションプログラマーですが、Webプログラミングでは比較的新しい、RESTなどRESTfulなサービス - 質問

他のさまざまなクライアントマシンを監視する中央サーバがあります。サーバーはいくつかのAPIを公開します。これにより、クライアントマシンは定期的に状態更新をサーバーに送信します。&それは常にサーバーに接続するクライアントですが、サーバーはPOSTメソッド&への応答を介してクライアントにコマンドを送信します。

これで、サーバー自体がプロアクティブにメッセージをクライアントに送信したい場合、これは可能です。つまり、クライアントは1時間に1回しか接続しませんが、途中でサーバーはクライアントに連絡するように要求する必要があります全く?

帯域外データの一部を取得する唯一の方法です。つまり、クライアントが別のプロセスを別のポートでリッスンするように設定することもできます。サーバーはいつでもクライアントに接続したいと考えています。サーバーは、そのポート上の特定のクライアントにサーバーに接続するように求めるメッセージを送信します。

答えて

0

実際の状況によっては、これを行う方法は2通りあります。あなたのネットワークがサーバーからクライアントへの接続を許可している場合は、クライアントに最小のWebサーバーまたはRPCのようなインターフェイスを公開し、サーバーから接続することができます。クライアントがファイアウォールやNATゲートウェイの背後にあるなど、これが不可能な場合、クライアントはサーバーをポーリングして待機中のコマンドがあるかどうかを確認する必要があります。