обмен сообщениями между клиентами без опроса - PullRequest
0 голосов
/ 15 марта 2011

У меня есть сеть серверов MS SQL, подключенных друг к другу с (C ++ / C #) клиентами, подключенными к ним.и я собираюсь разработать способ обмена сообщениями между клиентами и сервером-клиентом.Я уже читал о MS SQL Service Broker и других брокерах, таких как Apache Qpid.но все же я не могу выяснить, как это будет работать, я был бы благодарен, если бы кто-то мог предоставить мне лучшие источники или если бы кто-то уже работал с такой проблемой.

Как я могу сделать отправку и получение сообщений между клиентамибез возможности?

и, пожалуйста, убедитесь, что это не школьная домашняя работа или проект университетского курса.

Буду очень признателен за любые полезные комментарии или советы ...

+++Спасибо +++

Ответы [ 3 ]

0 голосов
/ 15 марта 2011

Если вы боитесь сделать

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

}

Вы всегда можете выполнить предварительную выборку, установите предварительную выборку:

  receiver.setCapacity(100);

, а затем вы можете использовать доступную функциональность сообщений, но во всехна самом деле, это звучит как опрос в обратном направлении;)

0 голосов
/ 15 марта 2011

MSDN имеет довольно много технической информации относительно SQL Service Broker. Это довольно высокий уровень, но если вы будете копать / читать достаточно, вы быстро станете профессионалом.

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

Удачи!

0 голосов
/ 15 марта 2011

Почему бы не опросить? Это легко, «самая глупая вещь, которая могла бы работать».

Я предлагаю вам рассмотреть возможность опроса, если вы не установили, в чем проблема с опросом.

Вопросы:

  1. Своевременность. Как быстро должно быть получено сообщение?
  2. Частота. Сколько сообщений отправляется каждому клиенту в час? В день?

Кроме того, если ваше приложение в любом случае имеет пульс подключения, вы можете сообщить ему о появлении новых сообщений и убить двух зайцев одним выстрелом.

...