-1

(C ++ / C#)クライアントが接続されたMSSQLサーバーのネットワークが相互に接続されています。そして、私はクライアントとサーバークライアントメッセージングの間のメッセージングの方法を設計することについてです。MS SQLServiceBrokerやApacheQpidなどの他のブローカーについてはすでに読んだことがあります。しかし、それでもこれがどのように機能するかはわかりません。誰かが私にもっと良い情報源を提供してくれるか、誰かがすでにそのような問題に取り組んでいる場合はありがたいです。

クライアント間でメッセージの送受信を不可能にするにはどうすればよいですか?

そして、これが学校の宿題や大学のコースプロジェクトではないことを確認してください。

有益なコメントやアドバイスをいただければ幸いです...

+++ありがとう+++

4

3 に答える 3

0

MSDNには、SQLServiceBrokerに関するかなりの技術情報があります。かなりハイレベルですが、十分に掘り下げて読むと、すぐにプロになります。

http://msdn.microsoft.com/en-us/library/ms166043%28SQL.90%29.aspx

実験を開始できるように、インターネット上に浮かんでいる便利なコードサンプルもたくさんあります。

http://blogs.msdn.com/b/sql_service_broker/
http://www.mssqltips.com/tip.asp?tip=1836

幸運を祈ります!

于 2011-03-15T15:04:56.437 に答える
0

ポーリングしてみませんか?それは簡単で、「おそらくうまくいく可能性のある最も愚かなこと」です。

ポーリングの問題が何であるかを確認していない限り、ポーリングを検討することをお勧めします。

考慮事項:

  1. 適時性。メッセージはどのくらい早く受信する必要がありますか?
  2. 周波数。1時間に各クライアントに送信されるメッセージの数はいくつですか。一日あたり?

さらに、アプリケーションに接続ハートビートがある場合は、新しいメッセージがあるかどうかを報告して、1つの石で2羽の鳥を殺すことができます。

于 2011-03-15T12:47:42.083 に答える
0

あなたがすることを恐れているなら

//PSUDO Code
while(!stopped){
   try{
     message = receiver.fetch(timeout);
   }catch(TimeoutException){
     //handle
   }

}

いつでもプリフェッチでき、プリフェッチを設定できます。

  receiver.setCapacity(100);

次に、利用可能なメッセージ機能を使用できますが、実際には、これは逆方向にポーリングのように聞こえます;)

于 2011-03-15T12:57:03.700 に答える