2011-08-24 8 views
1

私はC#で開発とアプリケーションを開始しようとしていますが、私はまだそれを開発するのに十分な知識がないことに気付きました。 私は、Webサーバーを自分のアプリケーションとcomunicateさせる方法を見つけ出す必要があります。つまり、簡単に言えば、Webサーバー(クライアントではない)が、クライアントアプリケーションですか?は、Webサーバー(クライアントではない)がクライアントアプリケーションにmessegeを送信する方法ですか?

私はそれを解決するために、私の方法は、クライアントアプリケーションは、定期的にWebサーバにメッセージを送信するためにですが、それは私が欲しいものではありません「原因ポーリングがオーバーヘッド

私の英語については申し訳ありません

を生成していることを知っています!私はネイティブスピーカーではありません。

ありがとうございます!

+0

を好きに傾いていますので、私はアマゾンで働いています。あなたは現在、サーバーとの通信にクライアントを使用していますか? –

+0

あなたはどのサーバー技術を使用していますか?たとえば、Google App Engineを使用している場合は便利な方法があります。 –

+0

@Philipp:これはC#でも使えますか?タグを確認してください... –

答えて

2

一般的に、このタイプのやりとりはCometやWebSocketsで実現されます。あなたのアプリがサーバーとどのように通信するのかよくわかりませんが、そのうちの1つを使って何をしようとしているかは分かります。

+0

[WebSockets](http://en.wikipedia.org/wiki/WebSockets)はまだ広く採用されている標準ではありません。そして、[Comet](http://en.wikipedia.org/wiki/Comet_(プログラミング))は、特定の技術ではありませんが、この手法はここでは役立ちます。+1コメット –

+0

古いブラウザ(通常はフラッシュを使用)でウェブソケットを偽装する方法はありますが、確かにそうです。 Socket.ioはこれの素晴らしい例です。 – Jesse

2

サーバー(または他のもの)からの接続をリッスンできるWCFサービスをクライアントに実装できます。サーバーは、APIを呼び出すのと同じくらい簡単にクライアントと通信できます。

VSのウィザードを使用すると、WCFを使い始めるのが簡単です。

Here is a link ASPでWCFを使用する方法について説明していますが、ASPの外でも使用できます。

+0

アダムを助けてくれてありがとう!あなたのものは素晴らしい答えです。私はWCFが始めるのが良い点だと思います。 "APIを呼び出すのと同じくらい簡単です"素晴らしい! –

+0

@ SolidSnake:この回答を受け入れる場合は、質問のチェックマークをクリックしてください。 –

0

"プッシュ"メッセージのように思えますが、この問題はサーバーがクライアントの紛失を追跡し、どのメッセージを受け取るべきかを管理することにあります。

オーバーヘッドを最小限に抑えたい場合は、Amazon Simple Notification Serviceをご覧ください。

SNSは、あなたのためにホストされ、管理されるクラウドベースのメッセージングおよび通知サービスです.SNSはトピック/サブスクライバモデルに基づいており、いくつかの単純なAPI呼び出しによって設定しますが、部。

編集:C#ライブラリとフレームワークでは、C#の専門家ではありませんので、他の回答者がそれをよく知っていると思います。

開示:私は自然な方法がありますが、自社の製品

+0

質問の始めから、私は彼らのテクノロジースタックが "C#"と "アプリケーションの開発を開始しようとしている"と思います。 MicrosoftはおそらくIIS/WCFをプッシュします。そのルートに行く前にチェックアウトしなければならないスタックがありますか? –

+0

ああ、私が見て、申し訳ありませんが明白な逃した!私はC#の世界に精通していないので、より資格のある人がそれに答えることができると思います。 –